---
title: flush()
framework: quartzcore
role: symbol
role_heading: Type Method
path: quartzcore/catransaction/flush()
---

# flush()

Flushes any extant implicit transaction.

## Declaration

```swift
class func flush()
```

## Discussion

Discussion Delays the commit until any nested explicit transactions have completed. Flush is typically called automatically at the end of the current runloop, regardless of the runloop mode. If your application does not have a runloop, you must call this method explicitly. However, you should attempt to avoid calling flush explicitly. By allowing flush to execute during the runloop your application will achieve better performance, atomic screen updates will be preserved, and transactions and animations that work from transaction to transaction will continue to function.

## See Also

### Creating and Committing Transactions

- [begin()](quartzcore/catransaction/begin().md)
- [commit()](quartzcore/catransaction/commit().md)
