XAsyncComplete
非同期プロバイダーのコールバック関数が作業を完了し、結果を返すことができることを示します。Syntax
Parameters
asyncBlock _Inout_型: XAsyncBlock* XAsyncBegin に渡された XAsyncBlock へのポインター。 result _In_
型: HRESULT コールバック関数によって実行された作業の結果。作業がキャンセルされた場合は、これを
E_ABORT に設定します。さらに作業を行う必要がある場合は、これを E_PENDING に設定します。それ以外の場合は、適切な結果コードに設定します。
requiredBufferSize _In_型: size_t コールバック関数によって返されるデータ ペイロードの必要なサイズ (バイト単位)。コールバック関数がデータ ペイロードを返さない場合、この値をゼロに設定します。コールバック関数がエラーを返す場合、このパラメーターは無視されます。
Return value
型: voidRemarks
この関数は、タイム センシティブ スレッドから呼び出しても安全ではありません。詳細については、Time-sensitive threads を参照してください。
XAsyncOp::DoWork 操作コードで呼び出された場合、コールバック関数は非同期作業を実行する必要があります。コールバック関数がすべての非同期作業を完了した場合は、result を適切なエラー コードに設定します。さらに作業を行う必要がある場合は、result を E_PENDING に設定します。関数がデータ ペイロードを返す場合は、データ ペイロードを返すのに必要なバッファーのサイズ (バイト単位) を requiredBufferSize に設定します。それ以外の場合は、requiredBufferSize をゼロに設定します。
コールバック関数が XAsyncOp::Cancel 操作コードで呼び出された場合、コールバック関数は非同期作業をキャンセルする必要があります。result を E_ABORT に、requiredBufferSize をゼロに設定します。
Requirements
ヘッダー: XAsyncProvider.h ライブラリ: xgameruntime.lib サポートされているプラットフォーム: Windows、XBOX One ファミリー本体および XBOX Series 本体Conceptual documentation
- Set up cancelability
- Set up custom provider
- Set up return data
- Asynchronous Programming Model
- Time-sensitive threads
See also
XAsyncProvider MembersXAsyncBegin
Asynchronous Programming Model
