一个 完成令牌 对象,表示当前正在执行的协程。
typedef basic_yield_context< any_io_executor > yield_context;
名称 |
描述 |
---|---|
与 yield 上下文关联的取消槽类型。 |
|
与 yield 上下文关联的执行器类型。 |
名称 |
描述 |
---|---|
basic_yield_context [构造函数] |
从另一个 yield 上下文类型构造 yield 上下文。 |
确定当前协程是否已被取消。 |
|
获取与协程关联的取消槽。 |
|
获取与协程关联的取消状态。 |
|
获取与 yield 上下文关联的执行器。 |
|
返回一个设置了指定 error_code 的 yield 上下文。 |
|
重置与协程关联的取消状态。 |
|
确定当协程已被取消时尝试挂起是否抛出异常。 |
basic_yield_context
类是一种完成令牌类型,用于表示当前正在执行的堆栈协程。 basic_yield_context
对象可以作为完成令牌传递给异步操作。 例如
template <typename Executor> void my_coroutine(basic_yield_context<Executor> yield) { ... std::size_t n = my_socket.async_read_some(buffer, yield); ... }
发起函数(在上面的例子中是 async_read_some)挂起当前的协程。当异步操作完成时,协程恢复执行,并返回操作的结果。
头文件: boost/asio/spawn.hpp
便捷头文件: 无