std::noop_coroutine_promise
Von cppreference.com
| Definiert in Header <coroutine> |
||
| struct noop_coroutine_promise {}; |
(seit C++20) | |
noop_coroutine_promise ist der Promise-Typ für No-Op-Coroutinen.
Eine No-Op-Coroutine verhält sich so, als würde sie
- nur den Kontrollfluss einer Coroutine ausführen, und
- wird sofort nach Beginn und Wiederaufnahme suspendiert, und
- hat einen Coroutine-Zustand, dessen Zerstörung keine Auswirkung hat, und
- erreicht niemals ihren finalen Suspendierungspunkt, wenn es irgendein std::coroutine_handle gibt, das auf sie verweist.
| Dieser Abschnitt ist unvollständig Grund: präzisere Formulierung |
No-Op-Coroutinen können mit std::noop_coroutine gestartet und über den zurückgegebenen Coroutine-Handle gesteuert werden. Der zurückgegebene Coroutine-Handle ist vom Typ std::noop_coroutine_handle, was ein Synonym für std::coroutine_handle<std::noop_coroutine_promise> ist.
Einige Operationen einer No-Op-Coroutine werden über den Typ std::noop_coroutine_handle zur Kompilierzeit als No-Op bestimmt.
| Dieser Abschnitt ist unvollständig Grund: Verwendung von No-Op-Coroutinen |
[edit] Beispiel
| Dieser Abschnitt ist unvollständig Grund: kein Beispiel |
[edit] Siehe auch
| (C++20) |
Erzeugt ein Coroutine-Handle, das beim Wiederaufnehmen oder Zerstören keine beobachtbaren Effekte hat (Funktion) |
| (C++20) |
std::coroutine_handle<std::noop_coroutine_promise>, vorgesehen für die Referenzierung einer No-Op-Coroutine (typedef) |