std::coroutine_handle<Promise>::coroutine_handle
来自cppreference.com
< cpp | coroutine | coroutine
handle
工具库
协程支持
协程特征 | ||||
(C++20)
|
||||
协程柄 | ||||
(C++20)
|
||||
无操作协程 | ||||
(C++20)
|
||||
(C++20)
|
||||
平凡可等待体 | ||||
(C++20)
|
||||
(C++20)
|
std::coroutine_handle
成员函数 | ||||
coroutine_handle::coroutine_handle
(C++20)
|
||||
(C++20)
|
||||
(C++20)
|
||||
转换 | ||||
观察器 | ||||
(C++20)
|
||||
(C++20)
|
||||
控制 | ||||
(C++20)(C++20)
|
||||
(C++20)
|
||||
承诺访问 | ||||
(C++20)
|
||||
导出/导入 | ||||
(C++20)
|
||||
(C++20)
|
||||
非成员函数 | ||||
(C++20)(C++20)
|
||||
辅助类 | ||||
(C++20)
|
constexpr
coroutine_handle()
noexcept;
|
(1) | (C++20 起) |
constexpr
coroutine_handle( std::nullptr_t
) noexcept;
|
(2) | (C++20 起) |
coroutine_handle(
const
coroutine_handle&
other )
= default;
|
(3) | (C++20 起) |
coroutine_handle(
coroutine_handle&&
other )
= default;
|
(4) | (C++20 起) |
创建不指代协程的 coroutine_handle
,或复制 coroutine_handle
。
1-2) 初始化底层地址为 nullptr
。构造后, address() 返回 nullptr
,而该
coroutine_handle
不指代协程。这些构造函数不对特化 std::coroutine_handle<std::noop_coroutine_promise> 声明。3-4) 复制底层地址。复制构造函数与移动构造函数等价于被隐式声明。
参数
other | - | 要复制的另一 coroutine_handle
|
注解
std::coroutine_handle<std::noop_coroutine_promise> 不可默认构造,亦不可从 std::nullptr_t 构造。 std::noop_coroutine 能用于创建新的 std::coroutine_handle<std::noop_coroutine_promise> 。
静态成员函数 from_promise 与 from_address 亦能创建
coroutine_handle
。
参阅
[静态]
(C++20)
|
从协程的承诺对象创建 coroutine_handle (公开静态成员函数) |
[静态]
(C++20)
|
从指针导入协程 (公开静态成员函数) |
(C++20)
|
创建在等待或销毁时无可观察作用的协程柄 (函数) |