一个异步代理是异步操作的顺序组合。 每个异步操作都被认为作为异步代理的一部分运行,即使该代理只包含该单个操作。 异步代理是一个可以与其他代理并发执行工作的实体。 异步代理之于异步操作,犹如线程之于同步操作。
然而,异步代理纯粹是一个概念性构造,它允许我们推理程序中异步操作的上下文和组合。“异步代理”这个名称没有出现在库中,也不重要使用哪种具体机制[1]来组合代理中的异步操作。
我们可以将异步代理可视化如下
异步代理交替等待异步操作完成,然后运行该操作的完成处理程序。 在代理的上下文中,这些完成处理程序代表可调度的不可分割的工作单元。