DXGKCB_ACQUIREHANDLEDATA回调函数 (d3dkmddi.h)

DxgkcbAcquirehandledata 获取对分配的引用。

语法

DXGKCB_ACQUIREHANDLEDATA DxgkcbAcquirehandledata;

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

参数

[in] unnamedParam1

指向描述 DxgkcbCreatecontextallocation返回的分配句柄的 DXGKARGCB_GETHANDLEDATA 结构的指针。

[out] unnamedParam2

指向内核模式驱动程序(KMD)的发布句柄的指针,用于管理对获取的分配的引用的生存期。 KMD 在调用 DxgkcbReleasehandledata 来释放分配引用时使用此句柄。

返回值

DxgkcbAcquirehandledata 返回 KMD 请求引用的分配句柄。 KMD 将此句柄用于对分配或资源执行后续作。

言论

应用程序或用户模式驱动程序可以随时调用 D3DKMTDestroyAllocation 来销毁分配句柄。 分配销毁涉及对 KMD 的请求,以删除在创建分配期间 Dxgkrnl 返回的分配对象,因此 KMD 最终可能会有指向释放内存的过时指针。 DxgkcbAcquirehandledataDxgkcbReleasehandledata 允许驱动程序在 Dxgkrnl 对象上保存引用,并确保在发布调用后,Dxgkrnl 不会销毁分配和 KMD 关联的对象。

DXGKCB_XXX 函数由 Dxgkrnl实现。 若要使用此回调函数,请设置 DXGKARGCB_GETHANDLEDATA 的成员,然后通过 DXGKRNL_INTERFACE调用 DxgkCbAcquireHandleData

要求

要求 价值
最低支持的客户端 Windows 10 (WDDM 2.0)
标头 d3dkmddi.h
IRQL <= APC_LEVEL

另请参阅

DXGKARGCB_GETHANDLEDATA

DxgkcbCreatecontextallocation

DxgkcbReleasehandledata

DXGKRNL_INTERFACE