PFND3D11DDI_DESTROYUNORDEREDACCESSVIEW Rückruffunktion (d3d10umddi.h)

Zerstört eine nicht sortierte Zugriffsansicht.

Syntax

PFND3D11DDI_DESTROYUNORDEREDACCESSVIEW Pfnd3d11ddiDestroyunorderedaccessview;

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

Parameter

unnamedParam1

hDevice [in]

Ein Handle für das Anzeigegerät (Grafikkontext).

unnamedParam2

hUnorderedAccessView [in]

Ein Handle für die privaten Daten des Treibers, damit die ungeordnete Zugriffsansicht zerstört werden kann. Die Microsoft Direct3D-Runtime gibt den Speicherbereich frei, den sie zuvor für die ungeordnete Zugriffsansicht zugewiesen hat. Daher kann der Treiber nicht mehr auf diese Speicherregion zugreifen.

Rückgabewert

Keine

Bemerkungen

Der Treiber kann die Rückruffunktion pfnSetErrorCb verwenden, um einen Fehlercode festzulegen.

Für den Treiber sollte kein Fehler auftreten, mit Ausnahme von D3DDDIERR_DEVICEREMOVED. Wenn der Treiber in einem Aufruf der PfnSetErrorCb-Funktion einen Fehler mit Ausnahme von D3DDDIERR_DEVICEREMOVED übergibt, ermittelt die Direct3D-Runtime daher, dass der Fehler kritisch ist. Selbst wenn das Gerät entfernt wird, muss der Treiber nicht D3DDDIERR_DEVICEREMOVED zurückgeben. Wenn die Geräteentfernung jedoch den Betrieb von DestroyUnorderedAccessView beeinträchtigt (was normalerweise nicht geschehen sollte), kann der Treiber D3DDDIERR_DEVICEREMOVED zurückgeben.

Hinweis Während der Zerstörung des unmittelbaren Kontexts und geräts oder der Zerstörung eines verzögerten Kontexts löscht Windows 7 die Bindungspunkte compute shader Unordered Access View (CS UAV) nicht. Daher sieht ein Treiber ein UAV-Handle weiterhin an einen Kontext gebunden, was gegen die allgemeinen Garantien der Runtime verstößt. Der Treiber kann dieses Problem umgehen, indem er die folgenden Schritte ausführt:

  • Verwenden Sie entweder die AbandonCommandList-Methode oder die CreateCommandList-Methode , da jede das Ende einer Befehlsliste markiert.
  • Leiten Sie die Bindung von CS-UAV-Bindungspunkten ab, indem Sie überprüfen, ob einer der folgenden Zustände auf NULL festgelegt ist: Mischzustand, Rasterungsstatus und Tiefen-/Schablonenzustand.
 

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client) DestroyUnorderedAccessView wird ab dem Windows 7-Betriebssystem unterstützt.
Zielplattform Desktop
Kopfzeile d3d10umddi.h (einschließlich D3d10umddi.h)

Weitere Informationen

AbandonCommandList

CreateCommandList

CreateUnorderedAccessView

D3D11DDI_DEVICEFUNCS

pfnSetErrorCb