Function Prototype

vkDestroyPipeline

Destroy a pipeline object

To destroy a pipeline, call:

void vkDestroyPipeline(
    VkDevice device,
    VkPipeline pipeline,
    const VkAllocationCallbacks* pAllocator);
  • device is the logical device that destroys the pipeline.
  • pipeline is the handle of the pipeline to destroy.
  • pAllocator controls host memory allocation as described in the Memory Allocation chapter.

Valid Usage

VUID-vkDestroyPipeline-pipeline-00765

All submitted commands that refer to pipeline must have completed execution

VUID-vkDestroyPipeline-pipeline-00766

If VkAllocationCallbacks were provided when pipeline was created, a compatible set of callbacks must be provided here

VUID-vkDestroyPipeline-pipeline-00767

If no VkAllocationCallbacks were provided when pipeline was created, pAllocator must be NULL

Valid Usage (Implicit)

VUID-vkDestroyPipeline-pipeline-parameter

If pipeline is not VK_NULL_HANDLE, pipeline must be a valid VkPipeline handle

VUID-vkDestroyPipeline-pAllocator-parameter

If pAllocator is not NULL, pAllocator must be a valid pointer to a valid VkAllocationCallbacks structure

VUID-vkDestroyPipeline-pipeline-parent

If pipeline is a valid handle, it must have been created, allocated, or retrieved from device

Host Synchronization

  • Host access to pipeline must be externally synchronized ::