---
title: pause()
framework: virtualization
role: symbol
role_heading: Instance Method
path: virtualization/vzvirtualmachine/pause()
---

# pause()

Pauses a running VM and notifies the specified completion handler of the results.

## Declaration

```swift
func pause() async throws
```

## Discussion

Discussion Call this method to pause a VM that’s in the VZVirtualMachine.State.running state. To determine if a VM is in a state that allows you to pause it, check the VM’s canPause property. If the VM stops before the attempt to pause it finishes, this method calls the completion handler with an error.

## See Also

### Starting and stopping the VM

- [start(completionHandler:)](virtualization/vzvirtualmachine/start(completionhandler:).md)
- [start()](virtualization/vzvirtualmachine/start().md)
- [start(options:completionHandler:)](virtualization/vzvirtualmachine/start(options:completionhandler:).md)
- [stop(completionHandler:)](virtualization/vzvirtualmachine/stop(completionhandler:).md)
- [pause(completionHandler:)](virtualization/vzvirtualmachine/pause(completionhandler:).md)
- [requestStop()](virtualization/vzvirtualmachine/requeststop().md)
- [resume(completionHandler:)](virtualization/vzvirtualmachine/resume(completionhandler:).md)
- [resume()](virtualization/vzvirtualmachine/resume().md)
- [VZVirtualMachineStartOptions](virtualization/vzvirtualmachinestartoptions.md)
