> ## Documentation Index
> Fetch the complete documentation index at: https://devdocs.xbox.com/llms.txt
> Use this file to discover all available pages before exploring further.

# XAsyncProvider 库概述

> XAsyncProvider 库概述

本主题描述了 [XAsyncProvider](/reference/system/xasyncprovider/xasyncprovider_members) 库的用途。它是三个异步库中最高级的一个，处理任务的运行方式。例如，`XAsyncProvider` 管理接收 [XAsyncBlock](/reference/system/xasync/structs/xasyncblock) 并将回调入队到任意任务队列的实际行为，处理可取消性，并设置结果缓冲区。

通常，`XAsyncProvider` 库是可选的，大多数情况下不需要，因为通常已经提供了提供程序。不过，当需要更高级的行为时可以使用该库，例如[以 Microsoft Game Development Kit (GDK) 风格创建 API](/build/core-features/common/async/async-libraries/async-library-xasyncprovider-example-setup-invocation-methods) 和[允许异步任务可取消](/build/core-features/common/async/async-libraries/async-library-xasyncprovider-example-setup-cancelability)。

<a id="async_provider_callback" />

#### 异步提供程序回调库

此库的大部分行为都围绕传递给 [XAsyncBegin](/reference/system/xasyncprovider/functions/xasyncbegin) 函数的异步提供程序回调的实现展开。该回调代表异步调用从开始到结束的整个流程，并处理沿途的不同状态变化。以下屏幕截图展示了提供程序处理任务的简化示意图。

<img src="https://mintcdn.com/microsoft-4404708b/sIrPFR_ir_sNKVEv/images/gdk/features/common/async_provider_diagram.png?fit=max&auto=format&n=sIrPFR_ir_sNKVEv&q=85&s=7ebe8812b5a7a51d77b5544ee3a8be93" alt="提供程序处理任务的简化示意图截图" width="662" height="355" data-path="images/gdk/features/common/async_provider_diagram.png" />

## 参考 API 文档

* [XAsyncProvider (API 内容)](/reference/system/xasyncprovider/xasyncprovider_members)
  * 函数
    * [XAsyncBegin](/reference/system/xasyncprovider/functions/xasyncbegin)
* [xasync (API 内容)](/reference/system/xasync/xasync_members)
  * 结构体
    * [XAsyncBlock](/reference/system/xasync/structs/xasyncblock)

## 另请参阅

[设置自定义提供程序（示例）](/build/core-features/common/async/async-libraries/async-library-xasyncprovider-example-setup-custom-provider)

[设置调用方法（示例）](/build/core-features/common/async/async-libraries/async-library-xasyncprovider-example-setup-invocation-methods)

[设置返回数据（示例）](/build/core-features/common/async/async-libraries/async-library-xasyncprovider-example-setup-return-data)

[设置可取消性（示例）](/build/core-features/common/async/async-libraries/async-library-xasyncprovider-example-setup-cancelability)

[XAsyncProvider](/reference/system/xasyncprovider/xasyncprovider_members)


## Related topics

- [XAsyncProvider](/zh-CN/reference/system/xasyncprovider/xasyncprovider_members.md)
- [XAsyncBlock](/zh-CN/reference/system/xasync/structs/xasyncblock.md)
- [XAsyncBegin](/zh-CN/reference/system/xasyncprovider/functions/xasyncbegin.md)
- [设置可取消性示例](/zh-CN/build/core-features/common/async/async-libraries/async-library-xasyncprovider-example-setup-cancelability.md)
- [设置调用方法示例](/zh-CN/build/core-features/common/async/async-libraries/async-library-xasyncprovider-example-setup-invocation-methods.md)
