Condividi tramite


PFND3DDDI_DEALLOCATE2CB funzione di callback (d3dumddi.h)

La funzione di callback in modalità utente pfnDeallocate2Cb rilascia le allocazioni per un oggetto risorsa in modalità kernel se l'oggetto risorsa è stato creato.

pfnDeallocate2Cb è una sostituzione di pfnDeallocateCb con un membro Flags aggiuntivo . Quando flag sono impostati su tutti gli zeri, il comportamento equivale a pfnDeallocateCb.

Sintassi

PFND3DDDI_DEALLOCATE2CB Pfnd3dddiDeallocate2cb;

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

Parametri

hDevice

Handle per il dispositivo di visualizzazione (contesto grafico).

unnamedParam2

pData [in]

Puntatore a una struttura D3DDDICB_DEALLOCATE2 che descrive la risorsa da rilasciare.

Valore restituito

Codice restituito Descrizione
S_OK La memoria è stata rilasciata correttamente.
E_INVALIDARG I parametri sono stati convalidati e sono stati determinati come non corretti.

Questa funzione potrebbe anche restituire altri valori HRESULT.

Commenti

Quando viene ricevuta una richiesta di distruzione di allocazione, VidMm presuppone che, per impostazione predefinita, i comandi accodati prima della richiesta di distruzione possano accedere all'allocazione distrutta e rinvia l'operazione di distruzione fino al termine dei comandi in coda. Se il driver in modalità utente (UMD) sa che i comandi in sospeso non accedono all'allocazione distrutta, può indicare a VidMm di non attendere il completamento dei comandi in sospeso impostando il flag AssumeNotInUse su TRUE quando si chiama pfnDeallocate2Cb.

Se un'applicazione o un UMD vuole garantire che la memoria di allocazione venga recuperata prima della restituzione dalla chiamata pfnDeallocate2Cb (ad esempio, per ridurre al minimo l'utilizzo massimo della memoria se la superficie viene ricreata), deve impostare il flag SynchronousDestroy .

Requisiti

Requisito Valore
Client minimo supportato Windows 10
Server minimo supportato Windows Server 2016
Piattaforma di destinazione Desktop
Intestazione d3dumddi.h (include D3dumddi.h)

Vedi anche

D3DDDICB_DEALLOCATE2

pfnDeallocateCb