Namespaces
Variants

std:: noop_coroutine_promise

From cppreference.net
Utilities library
Coroutine support
Coroutine traits
Coroutine handle
No-op coroutines
noop_coroutine_promise
(C++20)
Trivial awaitables
Range generators
(C++23)
定义于头文件 <coroutine>
struct noop_coroutine_promise { } ;
(C++20 起)

noop_coroutine_promise 是无操作协程的承诺类型。

一个无操作协程的行为表现为

  • 除了协程的控制流外不执行任何操作,且
  • 在开始后和恢复后立即被挂起,且
  • 其协程状态使得销毁该状态为空操作,且
  • 如果存在任何指向它的 std::coroutine_handle ,则永远不会到达其最终挂起点。

无操作协程可通过 std::noop_coroutine 启动,并由其返回的协程句柄进行控制。返回的协程句柄类型为 std::noop_coroutine_handle ,该类型是 std:: coroutine_handle < std :: noop_coroutine_promise > 的别名。

无操作协程的某些操作通过类型 std::noop_coroutine_handle 在编译时确定为无操作。

示例

参见

创建一个在恢复或销毁时无可见效果的协程句柄
(函数)
std:: coroutine_handle < std :: noop_coroutine_promise > ,用于引用无操作协程
(类型定义)