Skip to main content

XAsyncComplete

表示非同步提供者的回呼函式已完成工作,且可以傳回結果。

語法

參數

asyncBlock   _Inout_
類型:XAsyncBlock*
指向傳遞給 XAsyncBegin 之 XAsyncBlock 的指標。 result   _In_
類型:HRESULT
回呼函式所執行工作的結果。如果工作已取消,請將此值設定為 E_ABORT。如果需要完成更多工作,請將此值設定為 E_PENDING。否則,請將此值設定為適當的結果碼。 requiredBufferSize   _In_
類型:size_t
回呼函式要傳回之資料承載所需的大小 (以位元組為單位)。如果回呼函式不會傳回資料承載,請將此值設定為零。如果回呼函式傳回錯誤,則會忽略此參數。

傳回值

類型:void

備註

在時間敏感執行緒上呼叫此函式並不安全。如需詳細資訊,請參閱時間敏感執行緒。
當回呼函式已被呼叫以執行或取消非同步工作時,會呼叫此函式。此函式會傳回適當的結果碼,以及資料承載的相關資訊 (如果適用)。回呼函式的 XAsyncOp 作業代碼、非同步工作及資料承載的組合,通常會決定呼叫此函式時應為 result 和 requiredBufferSize 提供的值。 如果回呼函式是以 XAsyncOp::DoWork 作業代碼呼叫,回呼函式應執行非同步工作。如果回呼函式已完成所有非同步工作,請將 result 設定為適當的錯誤碼。如果需要完成更多工作,請將 result 設定為 E_PENDING。如果函式會傳回資料承載,請將 requiredBufferSize 設定為傳回資料承載所需之緩衝區的大小 (以位元組為單位);否則,請將 requiredBufferSize 設定為零。 如果回呼函式是以 XAsyncOp::Cancel 作業代碼呼叫,回呼函式應取消非同步工作。請將 result 設定為 E_ABORT,並將 requiredBufferSize 設定為零。

需求

標頭: XAsyncProvider.h 程式庫: xgameruntime.lib 支援的平台: Windows、XBOX One 系列主機和 XBOX Series 主機

概念文件

另請參閱

XAsyncProvider 成員
XAsyncBegin
非同步程式設計模型
Last modified on October 6, 2026