Protocol

MTLFence

An object that can capture, track, and manage resource dependencies across command encoders.

Declaration

@protocol MTLFence

Overview

A MTLFence object is typically used to track a sub-allocated resource created from a MTLHeap object. However, it can also track a non-heap resource that specifies a MTLResourceHazardTrackingModeUntracked resource option.

Don’t implement this protocol yourself; instead, to create a MTLFence object, call the newFence method of a MTLDevice object. A command encoder can either update a fence or wait for a fence. Refer to the methods listed in the following table for further information.

Topics

Identifying the Fence

device

The device object that created the fence.

Required.

label

A string that identifies the fence.

Required.

Specifying Render Stages

MTLRenderStages

The render stage at which a synchronization command is triggered.

Relationships

Inherits From

See Also

Fences

Image Filter Graph with Heaps and Fences

Demonstrates how to use heaps and fences to optimize a multistage image filter.