Condividi tramite


PFND3D11DDI_DESTROYUNORDEREDACCESSVIEW funzione di callback (d3d10umddi.h)

Elimina definitivamente una visualizzazione di accesso non ordinata.

Sintassi

PFND3D11DDI_DESTROYUNORDEREDACCESSVIEW Pfnd3d11ddiDestroyunorderedaccessview;

void Pfnd3d11ddiDestroyunorderedaccessview(
  D3D10DDI_HDEVICE unnamedParam1,
  D3D11DDI_HUNORDEREDACCESSVIEW unnamedParam2
)
{...}

Parametri

unnamedParam1

hDevice [in]

Handle per il dispositivo di visualizzazione (contesto grafico).

unnamedParam2

hUnorderedAccessView [in]

Handle per i dati privati del driver per la visualizzazione di accesso non ordinata da eliminare. Il runtime Di Microsoft Direct3D libera l'area di memoria allocata in precedenza per la visualizzazione di accesso non ordinata. Pertanto, il driver non può più accedere a questa area di memoria.

Valore restituito

Nessuno

Osservazioni

Il driver può usare il pfnSetErrorCb funzione di callback per impostare un codice di errore.

Il driver non deve riscontrare alcun errore, ad eccezione di D3DDDIERR_DEVICEREMOVED. Pertanto, se il driver passa qualsiasi errore, ad eccezione di D3DDDIERR_DEVICEREMOVED, in una chiamata alla funzione pfnSetErrorCb, il runtime Direct3D determina che l'errore è critico. Anche se il dispositivo viene rimosso, il driver non è necessario per restituire D3DDDIERR_DEVICEREMOVED; Tuttavia, se la rimozione del dispositivo interferisce con il funzionamento di DestroyUnorderedAccessView (che in genere non dovrebbe accadere), il driver può restituire D3DDDIERR_DEVICEREMOVED.

Nota Durante la distruzione del contesto immediato e del dispositivo o la distruzione di un contesto posticipato, Windows 7 non cancella i punti di associazione Di controllo degli accessi non ordinati (UAV) del compute shader. Di conseguenza, un driver vede un handle UAV da associare a un contesto, che viola le garanzie generali fornite dal runtime. Il driver può risolvere questo problema seguendo questa procedura:

  • Utilizzare il AbandonCommandList o il metodo CreateCommandList perché ogni elemento contrassegna la fine di un elenco di comandi.
  • Dedurre l'associazione dei punti di associazione UAV CS verificando che uno degli stati seguenti sia impostato su NULL: stato di fusione, stato rasterizzatore e stato depth/stencil.
 

Fabbisogno

Requisito Valore
client minimo supportato DestroyUnorderedAccessView è supportato a partire dal sistema operativo Windows 7.
piattaforma di destinazione Desktop
intestazione d3d10umddi.h (include D3d10umddi.h)

Vedere anche

AbandonCommandList

CreateCommandList

CreateUnorderedAccessView

D3D11DDI_DEVICEFUNCS

pfnSetErrorCb