std::coroutine_handle<Promise>::destroy

 
 
工具库
通用工具
日期和时间
函数对象
格式化库 (C++20)
(C++11)
关系运算符 (C++20 中弃用)
整数比较函数
(C++20)
swap 与类型运算
(C++14)
(C++11)
(C++11)
(C++11)
(C++17)
常用词汇类型
(C++11)
(C++17)
(C++17)
(C++17)
(C++17)

初等字符串转换
(C++17)
(C++17)
 
协程支持
协程特征
协程柄
无操作协程
平凡可等待体
 
 
特化 std::coroutine_handle<> 的成员
void destroy() const;
(1) (C++20 起)
特化 std::coroutine_handle<std::noop_coroutine_promise> 的成员
constexpr void destroy() const noexcept;
(2) (C++20 起)
1) 销毁 *this 所指代的协程的协程状态,或若该协程为无操作协程则不做任何事。主模板使用此函数。
2) 不做任何事。

若需要销毁且 *this 不指代暂停的协程,则行为未定义。

参数

(无)

返回值

(无)

注解

当前标准草案要求在从 std::noop_coroutine_handle 转换得到的 std::coroutine_handle<> 上调用 destroy 亦为无操作,这是不可实现的,因为 std::noop_coroutine_handle 可以指代非无操作的协程或不指代协程。此为 LWG 问题 3460

示例

参阅

恢复协程执行
(公开成员函数)