To wait for a set of semaphores created with a VkSemaphoreType of
VK_SEMAPHORE_TYPE_TIMELINE to reach particular counter values on the
// Provided by VK_VERSION_1_2 VkResult vkWaitSemaphores( VkDevice device, const VkSemaphoreWaitInfo* pWaitInfo, uint64_t timeout);
or the equivalent command
// Provided by VK_KHR_timeline_semaphore VkResult vkWaitSemaphoresKHR( VkDevice device, const VkSemaphoreWaitInfo* pWaitInfo, uint64_t timeout);
deviceis the logical device that owns the semaphore.
pWaitInfois a pointer to a VkSemaphoreWaitInfo structure containing information about the wait condition.
timeoutis the timeout period in units of nanoseconds.
timeoutis adjusted to the closest value allowed by the implementation-dependent timeout accuracy, which may be substantially longer than one nanosecond, and may be longer than the requested period.
If the condition is satisfied when
vkWaitSemaphores is called, then
vkWaitSemaphores returns immediately.
If the condition is not satisfied at the time
vkWaitSemaphores will block and wait until the condition
is satisfied or the
timeout has expired, whichever is sooner.
timeout is zero, then
vkWaitSemaphores does not wait, but
simply returns information about the current state of the semaphore.
VK_TIMEOUT will be returned in this case if the condition is not
satisfied, even though no actual wait was performed.
If the condition is satisfied before the
timeout has expired,
VK_TIMEOUT after the
timeout has expired.
If device loss occurs (see Lost Device) before
the timeout has expired,
vkWaitSemaphores must return in finite time
For more information, see the Vulkan Specification
This page is extracted from the Vulkan Specification. Fixes and changes should be made to the Specification, not directly.