Compartilhar via


DXGKDDI_DESTROYALLOCATION função de retorno de chamada (d3dkmddi.h)

A função DxgkDdiDestroyAllocation libera alocações.

Sintaxe

DXGKDDI_DESTROYALLOCATION DxgkddiDestroyallocation;

NTSTATUS DxgkddiDestroyallocation(
  [in] IN_CONST_HANDLE hAdapter,
  [in] IN_CONST_PDXGKARG_DESTROYALLOCATION pDestroyAllocation
)
{...}

Parâmetros

[in] hAdapter

Um identificador para um bloco de contexto associado a um adaptador de exibição. O driver de miniporto de exibição forneceu anteriormente esse identificador para o subsistema de kernel de elementos gráficos do Microsoft DirectX na função MiniportDeviceContext da função DxgkDdiAddDevice.

[in] pDestroyAllocation

Um ponteiro para uma estrutura de DXGKARG_DESTROYALLOCATION que contém informações para liberar alocações.

Valor de retorno

DxgkDdiDestroyAllocation retornará STATUS_SUCCESS ou um resultado de erro apropriado se as alocações não forem liberadas com êxito.

Observações

Quando o driver de exibição do modo de usuário chama a função pfnDeallocateCb, o subsistema de kernel de elementos gráficos DirectX (que faz parte do Dxgkrnl.sys) chama a função DxgkDdiDestroyAllocation do driver de exibição para liberar as alocações. O driver de miniporto de exibição deve limpar suas estruturas de dados internas e referências às alocações. O runtime do Microsoft Direct3D inicia chamadas para o gerenciador de memória de vídeo (que também faz parte do Dxgkrnl.sys), que então chama o agendador de GPU (que também faz parte do Dxgkrnl.sys) para sincronizar antes que a memória do vídeo seja realmente lançada.

O driver de miniporto de exibição pode liberar todo o recurso, bem como alocações. Para determinar se o recurso deve ser liberado, o driver de miniporto de exibição pode verificar se o sinalizador DestroyResource está definido no membro sinalizadores da estrutura DXGKARG_DESTROYALLOCATION à qual o parâmetro pDestroyAllocation aponta. Para liberar o recurso, o driver de miniporto de exibição deve limpar o identificador que o hResource membro do DXGKARG_DESTROYALLOCATION especifica. Se o driver de miniporto de exibição não liberar o recurso, o driver poderá alterar o valor em hResource, se necessário.

DxgkDdiDestroyAllocation deve ficar paginável.

Requisitos

Requisito Valor
de cliente com suporte mínimo Windows Vista
da Plataforma de Destino Área de trabalho
cabeçalho d3dkmddi.h
IRQL PASSIVE_LEVEL

Consulte também

DXGKARG_DESTROYALLOCATION

DxgkDdiAddDevice

pfnDeallocateCb