Compartilhar via


PFND3DDDI_DEALLOCATE2CB função de retorno de chamada (d3dumddi.h)

A função de retorno de chamada pfnDeallocate2Cb do modo de usuário libera alocações para um objeto de recurso no modo kernel se o objeto de recurso foi criado.

pfnDeallocate2Cb é um substituto para pfnDeallocateCb que tem um membro de sinalizadores de adicionais. Quando Sinalizadores são definidos como todos os zeros, o comportamento é equivalente a pfnDeallocateCb.

Sintaxe

PFND3DDDI_DEALLOCATE2CB Pfnd3dddiDeallocate2cb;

HRESULT Pfnd3dddiDeallocate2cb(
  HANDLE hDevice,
  const D3DDDICB_DEALLOCATE2 *unnamedParam2
)
{...}

Parâmetros

hDevice

Um identificador para o dispositivo de exibição (contexto gráfico).

unnamedParam2

pData [in]

Um ponteiro para uma estrutura D3DDDICB_DEALLOCATE2 que descreve o recurso a ser liberado.

Valor de retorno

Código de retorno Descrição
S_OK A memória foi liberada com êxito.
E_INVALIDARG Os parâmetros foram validados e determinados como incorretos.

Essa função também pode retornar outros valores HRESULT.

Observações

Quando uma solicitação de destruição de alocação é recebida, o VidMm pressupõe, por padrão, que os comandos enfileirados antes da solicitação de destruição podem acessar a alocação que está sendo destruída e adiar a operação de destruição até que os comandos enfileirados sejam concluídos. Se o UMD (driver de modo de usuário) souber que os comandos pendentes não acessam a alocação que está sendo destruída, ele poderá instruir o VidMm a não aguardar até que os comandos pendentes sejam concluídos definindo o sinalizador de AssumeNotInUse para verdadeiro ao chamar pfnDeallocate2Cb.

Se um aplicativo ou UMD quiser garantir que a memória de alocação seja recuperada antes do retorno da chamada pfnDeallocate2Cb (por exemplo, para minimizar o pico de uso de memória se a superfície estiver sendo recriada), ela deverá definir o sinalizador SynchronousDestroy.

Requisitos

Requisito Valor
de cliente com suporte mínimo Windows 10
servidor com suporte mínimo Windows Server 2016
da Plataforma de Destino Área de trabalho
cabeçalho d3dumddi.h (inclua D3dumddi.h)

Consulte também

D3DDDICB_DEALLOCATE2

pfnDeallocateCb