次の方法で共有


XTaskQueueCallback

タスク キューによって呼び出されるコールバック。

構文

void XTaskQueueCallback(  
         void* context,  
         bool canceled  
)  

パラメーター

context _In_opt_
型: void*

省略可能。 XTaskQueueSubmitCallback を呼び出すときに、コンテキスト ポインターが渡されました。

canceled _In_
型: bool

True の場合、タスク キューを終了するため、コールバックがキャンセルされています。

戻り値

型: void

解説

XTaskQueueCallback コールバックは、タスク キューの処理を実行するために実装されています。 XTaskQueueSubmitCallback または XTaskQueueSubmitDelayedCallback を呼び出すことで、タスク キューのワーク ポートまたは完了ポートのいずれかにコールバックを送信できます。 タスク キューのワーク ポートと完了ポートには、独立したディスパッチ モードを設定できます。また、XTaskQueueCallback コールバックをいずれかのポートに送信できます。 通常、ワーク ポートに送信されたコールバックは、処理を完了すると、対応するコールバックを完了ポートに送信します。

コールバックがキャンセルされた場合に、コールバックによって割り当てられたリソースが正常に解放されるようにするために、canceled パラメーターを使用します。 canceled が true に設定されている場合に XTaskQueueCallback コールバックが呼び出されると、そのコールバックのタスク キューは XTaskQueueTerminate を呼び出すことで終了し、コールバックはキャンセルされます。 コールバックは、context で割り当てられているメモリを含む、割り当てられたすべてのリソースを解放し、その他の処理は実行しません。

例については、「コールバックの送信」を参照してください。

要件

ヘッダー: XTaskQueue.h

ライブラリ: xgameruntime.lib

サポートされているプラットフォーム: Windows、Xbox One ファミリー本体、Xbox Series 本体

関連項目

XTaskQueue のメンバー
非同期プログラミング モデル
非同期タスク キューの設計