функция обратного вызова DXGKCB_ACQUIREHANDLEDATA (d3dkmddi.h)
DXGKCB_ACQUIREHANDLEDATA получает ссылку на выделение.
Синтаксис
DXGKCB_ACQUIREHANDLEDATA DxgkcbAcquirehandledata;
VOID * DxgkcbAcquirehandledata(
[in] IN_CONST_PDXGKARGCB_GETHANDLEDATA unnamedParam1,
[out] PDXGKARG_RELEASE_HANDLE unnamedParam2
)
{...}
Параметры
[in] unnamedParam1
Указатель на структуру DXGKARGCB_GETHANDLEDATA , описывающую дескриптор выделения, возвращаемый DXGKCB_CREATECONTEXTALLOCATION.
[out] unnamedParam2
Указатель на дескриптор выпуска, используемый драйвером при освобождении ссылки на выделение.
Возвращаемое значение
Нет.
Remarks
Дескриптора выделения могут быть уничтожены в любое время приложением или вызовом драйвера пользовательского режима d3DKMTDebaseAllocation на допустимом дескрипторе. Уничтожение выделения включает запрос к драйверу режима ядра на удаление объекта выделения, возвращенного Dxgkrnl во время создания выделения, чтобы KMD мог получить устаревший указатель на освобожденную память. DXGKCB_ACQUIREHANDLEDATA и DXGKCB_RELEASEHANDLEDATA позволяют драйверу хранить ссылку на объект Dxgkrnl и гарантировать, что Dxgkrnl не уничтожает выделение и объекты, связанные с KMD, до тех пор, пока не будет выполнен вызов release.
DXGKCB_XXX функции реализуются Dxgkrnl. Чтобы использовать эту функцию обратного вызова, задайте члены DXGKARGCB_GETHANDLEDATA , а затем вызовите DxgkCbAcquireHandleData через DXGKRNL_INTERFACE.
Требования
Требование | Значение |
---|---|
Минимальная версия клиента | Windows 10 (WDDM 2.0) |
Верхняя часть | d3dkmddi.h |
IRQL | <= APC_LEVEL |