Namespaces
Variants

std::coroutine_handle<Promise>::done

С ru.cppreference.net
 
 
Библиотека утилит
Поддержка языка
Поддержка типов (базовые типы, RTTI)
Макросы тестирования возможностей библиотеки (C++20)
Утилиты программы
Функции с переменным числом аргументов
Поддержка сопрограмм (C++20)
Поддержка контрактов (C++26)
Трёхстороннее сравнение
(C++20)
(C++20)(C++20)(C++20)    
(C++20)(C++20)(C++20)

Общие утилиты
Операторы отношения (устарело в C++20)
 
Поддержка сопрограмм
Характеристики сопрограмм
Дескриптор сопрограммы
Пустые сопрограммы
Тривиальные ожидаемые объекты
Генераторы диапазонов
(C++23)
 
 
Член других специализаций
bool done() const;
(1) (начиная с C++20)
Член специализации std::coroutine_handle<std::noop_coroutine_promise>
constexpr bool done() const noexcept;
(2) (начиная с C++20)

Проверяет, приостановлена ли приостановленная сопрограмма в своей конечной точке приостановки.

1) Возвращает true если сопрограмма, на которую ссылается *this приостановлена в своей конечной точке приостановки, или false если сопрограмма приостановлена в других точках приостановки. Поведение не определено, если *this не ссылается на приостановленную сопрограмму.
2) Всегда возвращает false.

Параметры

(нет)

Возвращаемое значение

1) true если корутина приостановлена в своей конечной точке приостановки, false если корутина приостановлена в других точках приостановки.
2) false

Примечания

Нет-оп корутина никогда не считается приостановленной в своей финальной точке приостановки.

Сопрограмма с объектом promise p считается приостановленной в своей финальной точке приостановки только если, пусть e будет результатом p. final_suspend ( ) , e. await_ready ( ) возвращает false . В частности, если p. final_suspend ( ) возвращает std::suspend_never , тогда done ( ) никогда не возвращает true .

Пример