std::execution:: then
From cppreference.net
C++
Execution control library
|
Definiert im Header
<execution>
|
||
|
execution
::
sender
auto
then
(
execution
::
sender
auto
input,
std:: invocable < /*values-sent-by*/ ( input ) ... > function ) ; |
(seit C++26) | |
Parameter
| input | - | Sender, der nach Ausführung die Werte sendet, auf denen die Funktion ausgeführt wird |
| function | - | Aufrufbares Objekt, das vom neuen Sender aufgerufen wird, der an den Input-Sender gekettet ist |
Rückgabewert
Gibt einen Sender zurück, der den durch den Eingabesender beschriebenen Task-Graphen beschreibt, mit einem zusätzlichen Knoten, der die bereitgestellte Funktion mit den vom Eingabesender gesendeten Werten als Argumente aufruft.
then
ist garantiert, dass die Funktion erst ausgeführt wird, wenn der zurückgegebene Sender gestartet wurde.
Beispiel
Mögliche Verwendung von
execution::then
.
execution::sender auto input = get_input(); execution::sender auto snd = execution::then(input, [](auto... args) { std::print(args...); }); // snd beschreibt die durch pred definierte Arbeit // gefolgt vom Ausgeben aller von pred gesendeten Werte