vkDestroyDescriptorPool
To destroy a descriptor pool, call:
void vkDestroyDescriptorPool(
VkDevice device,
VkDescriptorPool descriptorPool,
const VkAllocationCallbacks* pAllocator);
device
is the logical device that destroys the descriptor pool.descriptorPool
is the descriptor pool to destroy.pAllocator
controls host memory allocation as described in the Memory Allocation chapter.
When a pool is destroyed, all descriptor sets allocated from the pool are implicitly freed and become invalid. Descriptor sets allocated from a given pool do not need to be freed before destroying that descriptor pool.
Valid Usage
VUID-vkDestroyDescriptorPool-descriptorPool-00303
All submitted commands that refer to descriptorPool
(via any
allocated descriptor sets) must have completed execution
VUID-vkDestroyDescriptorPool-descriptorPool-00304
If VkAllocationCallbacks
were provided when descriptorPool
was created, a compatible set of callbacks must be provided here
VUID-vkDestroyDescriptorPool-descriptorPool-00305
If no VkAllocationCallbacks
were provided when
descriptorPool
was created, pAllocator
must be NULL
Valid Usage (Implicit)
VUID-vkDestroyDescriptorPool-device-parameter
device
must be a valid VkDevice handle
VUID-vkDestroyDescriptorPool-descriptorPool-parameter
If descriptorPool
is not VK_NULL_HANDLE, descriptorPool
must be a valid VkDescriptorPool handle
VUID-vkDestroyDescriptorPool-pAllocator-parameter
If pAllocator
is not NULL
, pAllocator
must be a valid pointer to a valid VkAllocationCallbacks structure
VUID-vkDestroyDescriptorPool-descriptorPool-parent
If descriptorPool
is a valid handle, it must have been created, allocated, or retrieved from device
Host Synchronization
- Host access to
descriptorPool
must be externally synchronized ::