Spec-Zone.ru › C++

std::noop_coroutine_promise

Определено в заголовке <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.

Пример

См. также

noop_coroutine
(C++20)
создаёт дескриптор корутины, у которого нет наблюдаемых эффектов при возобновлении или уничтожении
(функция)
noop_coroutine_handle
(C++20)
std::coroutine_handle<std::noop_coroutine_promise>, предназначенный для ссылки на пустую корутину
(typedef)

© cppreference.com
Licensed under the Creative Commons Attribution-ShareAlike Unported License v3.0.
https://en.cppreference.com/w/cpp/coroutine/noop_coroutine_promise

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API