Compartir a través de


DXGKCB_ACQUIREHANDLEDATA función de devolución de llamada (d3dkmddi.h)

DXGKCB_ACQUIREHANDLEDATA adquiere una referencia a una asignación.

Sintaxis

DXGKCB_ACQUIREHANDLEDATA DxgkcbAcquirehandledata;

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

Parámetros

[in] unnamedParam1

Puntero a una estructura de DXGKARGCB_GETHANDLEDATA que describe un identificador de asignación devuelto por DXGKCB_CREATECONTEXTALLOCATION.

[out] unnamedParam2

Puntero a un identificador de versión para que el controlador lo use al liberar la referencia de asignación.

Valor devuelto

Ninguno.

Comentarios

Los identificadores de asignación se pueden destruir en cualquier momento por una aplicación o por una llamada de controlador en modo de usuario a D3DKMTDestroyAllocation en un identificador válido. La destrucción de la asignación implica una solicitud al controlador en modo kernel para eliminar el objeto de asignación que Dxgkrnl devolvió durante la creación de la asignación, por lo que el KMD podría terminar con un puntero obsoleto para liberar memoria. DXGKCB_ACQUIREHANDLEDATA y DXGKCB_RELEASEHANDLEDATA permiten al controlador contener una referencia en el objeto Dxgkrnl y asegurarse de que Dxgkrnl no destruye la asignación y los objetos asociados a KMD hasta después de realizar la llamada de liberación.

DXGKCB_XXX funciones se implementan mediante Dxgkrnl. Para usar esta función de devolución de llamada, establezca los miembros de DXGKARGCB_GETHANDLEDATA y, a continuación, llame a DxgkCbAcquireHandleData a través del DXGKRNL_INTERFACE.

Requisitos

Requisito Value
Cliente mínimo compatible Windows 10 (WDDM 2.0)
Encabezado d3dkmddi.h
IRQL <= APC_LEVEL

Consulte también

DXGKARGCB_GETHANDLEDATA

DXGKCB_CREATECONTEXTALLOCATION

DXGKCB_RELEASEHANDLEDATA

DXGKRNL_INTERFACE