---
title: isFinished
framework: foundation
role: symbol
role_heading: Instance Property
path: foundation/operation/isfinished
---

# isFinished

A Boolean value indicating whether the operation has finished executing its task.

## Declaration

```swift
var isFinished: Bool { get }
```

## Discussion

Discussion The value of this property is true if the operation has finished its main task or false if it is executing that task or has not yet started it. When implementing a concurrent operation object, you must override the implementation of this property so that you can return the finished state of your operation. In your custom implementation, you must generate KVO notifications for the isFinished key path whenever the finished state of your operation object changes. For more information about manually generating KVO notifications, see Key-Value Observing Programming Guide. You do not need to reimplement this property for nonconcurrent operations.

## See Also

### Getting the Operation Status

- [isCancelled](foundation/operation/iscancelled.md)
- [isExecuting](foundation/operation/isexecuting.md)
- [isConcurrent](foundation/operation/isconcurrent.md)
- [isAsynchronous](foundation/operation/isasynchronous.md)
- [isReady](foundation/operation/isready.md)
- [name](foundation/operation/name.md)
