共用方式為


D3DDDICB_QUERYRESIDENCY 結構 (d3dumddi.h)

D3DDDICB_QUERYRESIDENCY結構描述資源或配置清單的落地狀態。

語法

typedef struct _D3DDDICB_QUERYRESIDENCY {
  [in]  HANDLE                 hResource;
  [in]  UINT                   NumAllocations;
  [in]  const D3DKMT_HANDLE    *HandleList;
  [out] D3DDDI_RESIDENCYSTATUS *pResidencyStatus;
} D3DDDICB_QUERYRESIDENCY;

成員

[in] hResource

查詢其落地的資源句柄。 如果使用者模式顯示驅動程式使用 HandleList 成員中的陣列來查詢落地,則會將 hResource 設定為 NULL

如果 hResource 為非 NULL,則會查詢屬於資源的所有配置,而且結果會傳回 pResidencyStatus 指向的陣列第一個元素中。 資源的落地狀態等於屬於資源之所有配置的最低落地狀態。

[in] NumAllocations

HandleList 陣列中的配置數目。 如果使用者模式顯示驅動程式將 hResource 成員中的句柄設定為非 NULL,則必須將 NumAllocations 設定為零。

[in] HandleList

D3DKMT_HANDLE數據類型的陣列,表示配置的核心模式句柄。 Microsoft Direct3D 運行時間的 pfnAllocateCb 函式會傳回這些句柄。 因此,使用者模式顯示驅動程式會使用這些句柄來查詢落地。

如果使用者模式顯示驅動程式將 hResource 成員中的句柄設定為非 NULL,則必須將 HandleList 設定為 NULL

[out] pResidencyStatus

D3DDDI_RESIDENCYSTATUS值的陣列指標。 如果 hResource 成員為非 NULL,陣列會包含單一元素,並接收下列其中一個值,以指出資源的落地狀態。 如果 hResourceNULL,陣列中的元素數目是由 NumAllocations 成員所指定,而且每個元素都會收到下列其中一個值,以指出 HandleList 所指定數位中對應配置的落地狀態。

ReplTest1 意義
D3DDDI_RESIDENCYSTATUS_RESIDENTINGPUMEMORY (1) 配置的資源或列表位於 GPU 記憶體中,這是最高的落地狀態。
D3DDDI_RESIDENCYSTATUS_RESIDENTINSHAREDMEMORY (2) 配置的資源或清單位於共用記憶體中。
D3DDDI_RESIDENCYSTATUS_NOTRESIDENT (3) 資源或配置清單是非經常性,這是最低落地狀態。

規格需求

需求
最低支援的用戶端 可在 Windows Vista 和更新版本的 Windows 作業系統中使用。
標頭 d3dumddi.h (include D3dumddi.h)

另請參閱

pfnQueryResidencyCb