ConstReadonlycpuComplete: 0The work has already finished, so there is nothing to wait for.
Readonlyd3d12Fence: 6handle is a shared Windows handle to an ID3D12Fence. Wait until it
reaches value.
ReadonlymetalSharedEvent: 5handle is an MTLSharedEvent. Wait until it reaches value.
ReadonlyopenGlFence: 1handle is a GLsync in the session's share group.
ReadonlyqueueOrder: 2The work was submitted to the queue that both sides share, so work submitted to that queue later runs after it.
ReadonlysyncFd: 4handle is a sync file descriptor.
ReadonlyvulkanTimelineSemaphore: 3handle is a VkSemaphore. Wait until it reaches value.
How one side waits for the other's GPU work on a shared texture.
A sync file descriptor or an OpenGL fence signals once, so when
AcquiredFrameHandle.release()succeeds, the session takes the one you pass. A Vulkan timeline semaphore, Metal shared event, or D3D12 fence counts up with each frame, so the one you pass stays yours. Keep it valid until a detach or release of the session completes.See
mln_gpu_sync_kindin the C API reference.