Skip to main content

XAsyncComplete

非同期プロバイダーのコールバック関数が作業を完了し、結果を返すことができることを示します。

Syntax

Parameters

asyncBlock   _Inout_
型: XAsyncBlock*
XAsyncBegin に渡された XAsyncBlock へのポインター。 result   _In_
型: HRESULT
コールバック関数によって実行された作業の結果。作業がキャンセルされた場合は、これを E_ABORT に設定します。さらに作業を行う必要がある場合は、これを E_PENDING に設定します。それ以外の場合は、適切な結果コードに設定します。 requiredBufferSize   _In_
型: size_t
コールバック関数によって返されるデータ ペイロードの必要なサイズ (バイト単位)。コールバック関数がデータ ペイロードを返さない場合、この値をゼロに設定します。コールバック関数がエラーを返す場合、このパラメーターは無視されます。

Return value

型: void

Remarks

この関数は、タイム センシティブ スレッドから呼び出しても安全ではありません。詳細については、Time-sensitive threads を参照してください。
この関数は、非同期作業を実行またはキャンセルするためにコールバック関数が呼び出されたときに呼び出されます。この関数は、適切な結果コードと、該当する場合はデータ ペイロードに関する情報を返します。XAsyncOp 操作コード、非同期作業、およびコールバック関数のデータ ペイロードの組み合わせは通常、この関数を呼び出すときに result および requiredBufferSize に指定する必要のある値を決定します。 コールバック関数が XAsyncOp::DoWork 操作コードで呼び出された場合、コールバック関数は非同期作業を実行する必要があります。コールバック関数がすべての非同期作業を完了した場合は、result を適切なエラー コードに設定します。さらに作業を行う必要がある場合は、resultE_PENDING に設定します。関数がデータ ペイロードを返す場合は、データ ペイロードを返すのに必要なバッファーのサイズ (バイト単位) を requiredBufferSize に設定します。それ以外の場合は、requiredBufferSize をゼロに設定します。 コールバック関数が XAsyncOp::Cancel 操作コードで呼び出された場合、コールバック関数は非同期作業をキャンセルする必要があります。resultE_ABORT に、requiredBufferSize をゼロに設定します。

Requirements

ヘッダー: XAsyncProvider.h ライブラリ: xgameruntime.lib サポートされているプラットフォーム: Windows、XBOX One ファミリー本体および XBOX Series 本体

Conceptual documentation

See also

XAsyncProvider Members
XAsyncBegin
Asynchronous Programming Model
最終更新日 2026年8月24日