XMemAlloc
代表由應用程式定義、用來取代預設記憶體配置器的記憶體配置回呼函式。語法
參數
Size _In_類型:SIZE_T 所要求之記憶體區塊的大小 (以位元組為單位)。 Attributes _In_
類型:ULONGLONG 記憶體配置的屬性。如需詳細資訊,請參閱 XALLOC_ATTRIBUTES。
傳回值
類型:PVOID 如果成功,則為已配置記憶體的指標;否則為NULL。
備註
您可以實作此函式以提供應用程式專屬的記憶體配置。此函式的定義必須符合 XMEMALLOC_ROUTINE 函式的定義。同樣地,您也可以實作符合 XMEMFREE_ROUTINE 函式定義的 XMemFree 函式,以提供應用程式專屬的記憶體解除配置。 實作後,您便可以使用 XMemSetAllocationHooks 函式,以您自己的應用程式專屬XMemAlloc 和 XMemFree 函式取代預設的記憶體配置和解除配置函式。如需 XMemAlloc 的詳細資訊,請參閱 GDK 的圖形記憶體概觀。
XMemAlloc 預設實作的原始程式碼會隨 Microsoft Game Development Kit (GDK) 一起安裝。如需詳細資訊,請參閱
\GXDK\gameKit\Source\amd64\heap.c 中的 XMemAllocDefault 函式。如果您實作自己的 XMemAlloc 函式,極為重要的是不要從中呼叫 Direct3D 12 驅動程式。這是因為驅動程式的正常運作可能會導致叫用 XMemAlloc,而且沒有防止遞迴的保護。此需求也延伸至不得對 Direct3D 12 物件執行最終的 Release 作業,因為這可能會導致隱含的驅動程式呼叫。
需求
標頭: xmem.h 程式庫: xmem.lib 支援的平台: XBOX One 系列主機和 XBOX Series 主機概念文件
另請參閱
診斷與記憶體追蹤XMem
XMemAllocDefault
