共用方式為


D3DDDI_EVICT_FLAGS 結構 (d3dukmdt.h)

D3DDDI_EVICT_FLAGS 指定收回行為。

語法

typedef struct D3DDDI_EVICT_FLAGS {
  union {
    struct {
      UINT EvictOnlyIfNecessary : 1;
      UINT NotWrittenTo : 1;
      UINT Reserved : 30;
    };
    UINT Value;
  };
} D3DDDI_EVICT_FLAGS;

成員

EvictOnlyIfNecessary

設定時,這表示資源可能會在近期再次使用,並指示 OS 嘗試延遲 GPU 的實際資源收回,直到記憶體不足的情況為止。 如果未設定,這會指示操作系統不再使用資源,而且應該在最早的機會執行收回。

注意 如果落地參考計數未達到零,則會忽略此旗標,因為該時間之前不會收回配置。
 

NotWrittenTo

設定時,這表示資源自建置以來,GPU 尚未寫入該資源。 這可讓OS藉由捨棄配置內容,而不是將它分頁至系統記憶體,來優化收回程式。 驅動程式必須加入加入才能使用此旗標。 根據預設,此值為零,且配置會在收回期間被視為已變更。 不同於 EvictOnlyIfNecessary,驅動程式不需要延遲設定此旗標,直到最後一次呼叫 Evict (pfnEvictCbD3DKMTEvict) ,而且指定此旗標的效果會立即發生。 換句話說,如果驅動程式多次呼叫 MakeResident ,則任何一個後續 收回 作業都有效,以指定此旗標。 在上次呼叫之前,驅動程式不會追蹤此旗標。

Reserved

這個成員是保留的,而且應該設定為零。

Value

結構中旗標的合併值。

規格需求

需求
最低支援的用戶端 Windows 10
最低支援的伺服器 Windows Server 2016
標頭 d3dukmdt.h (包括 D3dumddi.h、D3dkmddi.h)

另請參閱

D3DKMTEvict

pfnEvictCb