IDStorageQueueX::EnqueueStatus
ステータス書き込みをキューに入れます。構文
パラメーター
statusArrayType: IDStorageStatusArrayX IDStorageStatusArrayX オブジェクト。 index
Type: UINT32 ステータスを受け取る
IDStorageStatusArrayX オブジェクト内のステータス エントリのインデックス。
戻り値
Type: 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
