Skip to main content

XAsyncComplete

指示异步提供程序的回调函数已完成工作并且可以返回结果。

Syntax

Parameters

asyncBlock   _Inout_
类型:XAsyncBlock*
指向传递给 XAsyncBeginXAsyncBlock 的指针。 result   _In_
类型:HRESULT
回调函数所执行工作的结果。如果工作被取消,请将其设置为 E_ABORT。如果需要执行更多工作,请将其设置为 E_PENDING。否则,请将其设置为适当的结果代码。 requiredBufferSize   _In_
类型:size_t
回调函数要返回的数据负载所需的大小(以字节为单位)。如果回调函数不返回数据负载,请将此值设置为零。如果回调函数返回错误,则会忽略此参数。

Return value

类型:void

Remarks

此函数在时间敏感线程上调用不安全。有关详细信息,请参阅时间敏感线程
在调用回调函数以执行或取消异步工作时会调用此函数。该函数返回适当的结果代码,并在适用时返回有关数据负载的信息。XAsyncOp 操作代码、异步工作和回调函数的数据负载的组合通常决定调用此函数时应为 resultrequiredBufferSize 提供的值。 如果已使用 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

See also

XAsyncProvider Members
XAsyncBegin
异步编程模型
最后修改于 2026年8月24日