AsyncProviderData
表示传递到异步提供程序的回调函数的数据。
语法
typedef struct XAsyncProviderData {
XAsyncBlock* async;
size_t bufferSize;
void* buffer;
void* context;
} XAsyncProviderData
成员
async
类型:XAsyncBlock*
指向保存异步调用数据的 XAsyncBlock 的指针。
bufferSize
类型:size_t
缓冲区中指定的结果缓冲区的大小(字节)。 只有使用 XAsyncOp::GetResult 操作代码调用回调函数时,此值才有效,并且该值将等于或大于为相应的 XAsyncComplete 函数调用的 requiredBufferSize 参数指定的值。
buffer
类型:void*
指向回调函数的结果缓冲区的指针。 只有使用 XAsyncOp::GetResult 操作代码调用回调函数时,此值才有效。
context
类型:void*
调用 XAsyncBegin 时传递给回调函数的上下文指针。
备注
此结构表示传递到异步提供程序的回调函数的数据。 每次调用回调函数时,此结构中的数据都可以更改。 重复调用回调函数以执行异步工作,该异步工作由为每个调用指定的 XAsyncOp 操作代码确定,并且此结构中的数据也会随每次调用而更改。
buffer和 bufferSize 的值仅在使用 XAsyncOp::GetResult
操作代码调用回调函数时才有效。 使用任何操作代码调用回调函数时,context 的值是有效的,但仅当使用 XAsyncOp::Cleanup
操作代码调用回调函数时,才会释放该值。
有关对 GetResult
和 XAsyncOp
中的 Cleanup
操作代码执行异步操作时与 XAsyncProviderData
交互的回调函数示例,请参阅异步编程模型中的“异步库”部分。
要求
头文件: XAsyncProvider.h
支持平台:Windows、Xbox One 系列主机和 Xbox Series 主机
另请参阅
XAsyncProvider 成员
XAsyncComplete
XAsyncBegin
XAsyncOp
异步编程模型