PFND3DDDI_DEALLOCATE2CB回调函数 (d3dumddi.h)
pfnDeallocate2Cb 用户模式回调函数在创建资源对象时释放内核模式资源对象的分配。
pfnDeallocate2Cb 是 pfnDeallocateCb 的替代项,该 标志 成员。 当 标志 设置为所有零时,行为等效于 pfnDeallocateCb。
语法
PFND3DDDI_DEALLOCATE2CB Pfnd3dddiDeallocate2cb;
HRESULT Pfnd3dddiDeallocate2cb(
HANDLE hDevice,
const D3DDDICB_DEALLOCATE2 *unnamedParam2
)
{...}
参数
hDevice
显示设备的句柄(图形上下文)。
unnamedParam2
pData [in]
指向描述要释放的资源的 D3DDDICB_DEALLOCATE2 结构的指针。
返回值
返回代码 | 描述 |
---|---|
S_OK | 已成功释放内存。 |
E_INVALIDARG | 参数已验证并确定不正确。 |
此函数还可以返回其他 HRESULT 值。
言论
收到分配销毁请求时,VidMm 假定在销毁请求之前排队的命令可以访问被销毁的分配,并延迟销毁作,直到排队命令完成。 如果用户模式驱动程序(UMD)知道挂起的命令无法访问被销毁的分配,则它可以通过 在调用 pfnDeallocate2Cb时将 AssumeNotInUse 标志设置为 TRUE,它可指示 VidMm 不要等待挂起的命令完成。
如果应用程序或 UMD 希望确保在从 pfnDeallocate2Cb 调用返回之前回收分配内存(例如,若要在重新创建图面时尽量减少峰值内存使用量),则应设置 SyncDestroy 标志。
要求
要求 | 价值 |
---|---|
最低支持的客户端 | Windows 10 |
支持的最低服务器 | Windows Server 2016 |
目标平台 | 桌面 |
标头 | d3dumddi.h (包括 D3dumddi.h) |