Skip to main content
从地址在系统内存中创建一个专用诊断堆。即使在发生 GPU 故障或设备已移除的情况下,所创建的堆也可以保持存在。

语法

参数

pAddress [in]
类型:const void *
用于创建堆的地址。 riid
类型:const IID &
堆接口 (ID3D12Heap) 的全局唯一标识符 (GUID)。 可以使用 __uuidof() 宏获取堆接口的 REFIIDGUID。例如,__uuidof(ID3D12Heap) 将检索堆接口的 GUID ppvHeap [out]
类型:void **
SALCOM_Outptr 指向内存块的指针。成功时,D3D12 运行时会将指向新打开堆的指针写入该内存块。指针的类型取决于提供的 riid 参数。

返回值

类型:HRESULT 如果没有足够的内存来打开现有堆,则此方法返回 E_OUTOFMEMORY。有关其他可能的返回值,请参阅 Direct3D 12 返回代码

备注

堆是在系统内存中创建的,并允许 CPU 访问。它包装整个 VirtualAlloc 区域。 堆可用于放置资源和保留资源,与其他堆一样正交。基于无法由应用程序选择的标志,可能仍然存在限制。

要求

头文件: d3d12_xs.h 或 d3d12_x.h
库: d3d12_xs.lib 或 d3d12_x.lib
支持的平台:XBOX Series 主机和 XBOX One 系列

另请参阅

ID3D12Device3 接口
最后修改于 2026年8月13日