Function Prototype
vkDestroyShaderModule
Destroy a shader module
To destroy a shader module, call:
void vkDestroyShaderModule(
VkDevice device,
VkShaderModule shaderModule,
const VkAllocationCallbacks* pAllocator);
device
is the logical device that destroys the shader module.shaderModule
is the handle of the shader module to destroy.pAllocator
controls host memory allocation as described in the Memory Allocation chapter.
A shader module can be destroyed while pipelines created using its shaders are still in use.
Valid Usage
VUID-vkDestroyShaderModule-shaderModule-01092
If VkAllocationCallbacks
were provided when shaderModule
was
created, a compatible set of callbacks must be provided here
VUID-vkDestroyShaderModule-shaderModule-01093
If no VkAllocationCallbacks
were provided when shaderModule
was created, pAllocator
must be NULL
Valid Usage (Implicit)
VUID-vkDestroyShaderModule-device-parameter
device
must be a valid VkDevice handle
VUID-vkDestroyShaderModule-shaderModule-parameter
If shaderModule
is not VK_NULL_HANDLE, shaderModule
must be a valid VkShaderModule handle
VUID-vkDestroyShaderModule-pAllocator-parameter
If pAllocator
is not NULL
, pAllocator
must be a valid pointer to a valid VkAllocationCallbacks structure
VUID-vkDestroyShaderModule-shaderModule-parent
If shaderModule
is a valid handle, it must have been created, allocated, or retrieved from device
Host Synchronization
- Host access to
shaderModule
must be externally synchronized ::