An operation that manages the concurrent execution of one or more blocks.


class BlockOperation : Operation


The BlockOperation class is a concrete subclass of Operation that manages the concurrent execution of one or more blocks. You can use this object to execute several blocks at once without having to create separate operation objects for each. When executing more than one block, the operation itself is considered finished only when all blocks have finished executing.

Blocks added to a block operation are dispatched with default priority to an appropriate work queue. The blocks themselves should not make any assumptions about the configuration of their execution environment.

For more information about blocks, see Blocks Programming Topics.


Managing the Blocks in the Operation

init(block: () -> Void)

Creates and returns an NSBlockOperation object and adds the specified block to it.

func addExecutionBlock(() -> Void)

Adds the specified block to the receiver’s list of blocks to perform.

var executionBlocks: [() -> Void]

The blocks associated with the receiver.


Inherits From

Conforms To

See Also


class Operation

An abstract class that represents the code and data associated with a single task.

class OperationQueue

A queue that regulates the execution of operations.