std::coroutine_handle<Promise>::coroutine_handle
来自cppreference.com
< cpp | coroutine | coroutine handle
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) |
创建在等待或销毁时无可观察作用的协程柄 (函数) |