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.

Beta Software

This documentation contains preliminary information about an API or technology in development. This information is subject to change, and software implemented according to this documentation should be tested with final operating system software.

Learn more about using Apple's beta software