Instance Method

waitForFence:

Prevents further GPU commands from being enqueued by the command encoder until the given fence is reached.

Required.

Declaration

- (void)waitForFence:(id<MTLFence>)fence;

Parameters

fence

The fence to wait for.

Discussion

Fences are manipulated when the command buffer is submitted to the GPU. This maintains global order and prevents deadlock.

Fences are evaluated at command encoder boundaries. Waits occur at the beginning of an encoder and updates occur at the end of the encoder. Therefore, you’re not allowed to first update and then wait on the same fence in the same encoder. However, you’re allowed to first wait and then update the same fence.

See Also

Performing Fence Operations

- updateFence:

Updates the given fence to capture all GPU work enqueued by the command encoder up to this specific point.

Required.