IDStorageQueueX::EnqueueStatus
將狀態寫入加入佇列。語法
參數
statusArray類型:IDStorageStatusArrayX IDStorageStatusArrayX 物件。 index
類型:UINT32
IDStorageStatusArrayX 物件中要接收狀態之狀態項目的索引。
傳回值
類型:void備註
當在其之前加入佇列的所有要求都完成時,狀態陣列就會收到訊號。 呼叫此方法之後,遊戲執行緒可以視需要輪詢IDStorageStatusArrayX
物件。(在呼叫此方法之前,狀態的狀態是未定義的。) 如果自上一個狀態項目以來發生任何失敗,加入佇列之狀態項目的 HResult
會儲存第一個失敗要求的失敗碼。
如果 EnqueueStatus 方法在上次提交後填滿了佇列容量的一半,就會在 EnqueueStatus
呼叫中觸發自動提交。
在大多數情況下,此方法只會對佇列執行一次記憶體寫入,因此只需
極少的 CPU 時間即可完成。但是,如果觸發了自動提交,
就會耗用明顯更多的 CPU 時間,包括核心模式轉換,以及在呼叫端執行緒中
處理所有先前提交的要求。
如果不希望發生自動提交,建議遊戲使用容量夠大的佇列,
並在適當時機手動呼叫 Submit。
如需詳細資訊,請參閱 DirectStorage
概觀中的「Notification」和
「EnqueueStatus/EnqueueSignal/EnqueueSetEvent」章節。
需求
標頭: dstorage_xs.h 程式庫: dstorage_xs.lib 支援的平台: XBOX Series 主機另請參閱
IDStorageFactoryX::CreateStatusArrayIDStorageQueueX::EnqueueSignal
IDStorageQueueX
DStorage
