vkImportSemaphoreWin32HandleKHR(3)

# vkImportSemaphoreWin32HandleKHR(3) Manual Page

## Name

vkImportSemaphoreWin32HandleKHR - Import a semaphore from a Windows HANDLE

Loading... please wait.

## C Specification

To import a semaphore payload from a Windows handle, call:

    VkResult vkImportSemaphoreWin32HandleKHR(
        VkDevice                                    device,
        const VkImportSemaphoreWin32HandleInfoKHR*  pImportSemaphoreWin32HandleInfo);

## Parameters

- `device` is the logical device that created the semaphore.

- `pImportSemaphoreWin32HandleInfo` is a pointer to a VkImportSemaphoreWin32HandleInfoKHR structure specifying the semaphore and import parameters.

## Description

Importing a semaphore payload from Windows handles does not transfer ownership of the handle to the Vulkan implementation. For handle types defined as NT handles, the application must release ownership using the `CloseHandle` system call when the handle is no longer needed.

Applications can import the same semaphore payload into multiple instances of Vulkan, into the same instance from which it was exported, and multiple times into a given Vulkan instance.

Valid Usage (Implicit)

- `device` must be a valid VkDevice handle

- `pImportSemaphoreWin32HandleInfo` must be a valid pointer to a valid VkImportSemaphoreWin32HandleInfoKHR structure

Return Codes

On success, this command returns

  - `VK_SUCCESS`

On failure, this command returns

  - `VK_ERROR_OUT_OF_HOST_MEMORY`

  - `VK_ERROR_INVALID_EXTERNAL_HANDLE`

## See Also

VkDevice, VkImportSemaphoreWin32HandleInfoKHR

## Document Notes

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.

## Copyright

Copyright (c) 2014-2020 Khronos Group. This work is licensed under a Creative Commons Attribution 4.0 International License.