Freigeben über


DXGKCB_ACQUIREHANDLEDATA Rückruffunktion (d3dkmddi.h)

DxgkcbAcquirehandledata erhält einen Verweis auf eine Zuordnung.

Syntax

DXGKCB_ACQUIREHANDLEDATA DxgkcbAcquirehandledata;

VOID * DxgkcbAcquirehandledata(
  [in]  IN_CONST_PDXGKARGCB_GETHANDLEDATA unnamedParam1,
  [out] PDXGKARG_RELEASE_HANDLE unnamedParam2
)
{...}

Parameter

[in] unnamedParam1

Zeiger auf eine DXGKARGCB_GETHANDLEDATA Struktur, die ein zuordnungshandle beschreibt, das von DxgkcbCreatecontextallocationzurückgegeben wird.

[out] unnamedParam2

Zeigen Sie auf ein Releasehandle für den Kernelmodustreiber (Kernelmodustreiber, KMD), um die Lebensdauer des Verweises auf die erworbene Zuordnung zu verwalten. Der KMD verwendet dieses Handle, wenn er DxgkcbReleasehandledata- aufruft, um den Zuordnungsverweis freizugeben.

Rückgabewert

DxgkcbAcquirehandledata gibt ein Handle für die Zuordnung zurück, auf die die KMD einen Verweis angefordert hat. Der KMD verwendet dieses Handle für nachfolgende Vorgänge für die Zuordnung oder Ressource.

Bemerkungen

Ein Anwendungs- oder Benutzermodustreiber kann jederzeit D3DKMTDestroyAllocation- aufrufen, um einen Zuordnungshandle zu zerstören. Die Zuordnungsvernichtung umfasst eine Anforderung an die KMD, um das Zuordnungsobjekt zu löschen, das Dxgkrnl während der Zuordnungserstellung an sie zurückgegeben, sodass die KMD mit einem veralteten Zeiger zum Freigeben des Speichers enden könnte. DxgkcbAcquirehandledata und DxgkcbReleasehandledata zulassen, dass der Treiber einen Verweis auf das Dxgkrnl--Objekt enthält, und stellen Sie sicher, dass Dxgkrnl- die Zuordnung und die KMD-zugeordneten Objekte erst nach dem Releaseaufruf zerstört.

DXGKCB_XXX Funktionen werden von Dxgkrnlimplementiert. Um diese Rückruffunktion zu verwenden, legen Sie die Member von DXGKARGCB_GETHANDLEDATA fest, und rufen Sie dann DxgkCbAcquireHandleData über die DXGKRNL_INTERFACEauf.

Anforderungen

Anforderung Wert
mindestens unterstützte Client- Windows 10 (WDDM 2.0)
Header- d3dkmddi.h
IRQL- <= APC_LEVEL

Siehe auch

DXGKARGCB_GETHANDLEDATA

DxgkcbCreatecontextallocation-

DxgkcbReleasehandledata-

DXGKRNL_INTERFACE