vkDestroyDebugUtilsMessengerEXT
To destroy a VkDebugUtilsMessengerEXT
object, call:
void vkDestroyDebugUtilsMessengerEXT(
VkInstance instance,
VkDebugUtilsMessengerEXT messenger,
const VkAllocationCallbacks* pAllocator);
instance
is the instance where the callback was created.messenger
is the VkDebugUtilsMessengerEXT object to destroy.messenger
is an externally synchronized object and must not be used on more than one thread at a time. This means thatvkDestroyDebugUtilsMessengerEXT
must not be called when a callback is active.pAllocator
controls host memory allocation as described in the Memory Allocation chapter.
Valid Usage
VUID-vkDestroyDebugUtilsMessengerEXT-messenger-01915
If VkAllocationCallbacks
were provided when messenger
was
created, a compatible set of callbacks must be provided here
VUID-vkDestroyDebugUtilsMessengerEXT-messenger-01916
If no VkAllocationCallbacks
were provided when messenger
was
created, pAllocator
must be NULL
Valid Usage (Implicit)
VUID-vkDestroyDebugUtilsMessengerEXT-instance-parameter
instance
must be a valid VkInstance handle
VUID-vkDestroyDebugUtilsMessengerEXT-messenger-parameter
If messenger
is not VK_NULL_HANDLE, messenger
must be a valid VkDebugUtilsMessengerEXT handle
VUID-vkDestroyDebugUtilsMessengerEXT-pAllocator-parameter
If pAllocator
is not NULL
, pAllocator
must be a valid pointer to a valid VkAllocationCallbacks structure
VUID-vkDestroyDebugUtilsMessengerEXT-messenger-parent
If messenger
is a valid handle, it must have been created, allocated, or retrieved from instance
Host Synchronization
- Host access to
messenger
must be externally synchronized ::
The application must ensure that vkDestroyDebugUtilsMessengerEXT is
not executed in parallel with any Vulkan command that is also called with
instance
or child of instance
as the dispatchable argument.