std::barrier<CompletionFunction>::arrive_and_drop
| void arrive_and_drop(); |
(seit C++20) | |
Verringert die anfänglich erwartete Anzahl für alle nachfolgenden Phasen um eins und verringert dann die erwartete Anzahl für die aktuelle Phase um eins.
Dieser Funktionsaufruf wird atomar ausgeführt. Der Aufruf dieser Funktion findet stark vor dem Beginn des Phasenabschluss-Schritts für die aktuelle Phase statt.
Das Verhalten ist undefiniert, wenn die erwartete Anzahl für die aktuelle Phase null ist.
Inhalt |
[bearbeiten] Parameter
(keine)
[bearbeiten] Rückgabewert
(keine)
[bearbeiten] Ausnahmen
Wirft std::system_error mit einem für Mutex-Typen zulässigen Fehlercode im Fehlerfall.
[bearbeiten] Hinweise
Diese Funktion kann dazu führen, dass der Abschluss-Schritt für die aktuelle Phase beginnt.
Wenn die aktuelle erwartete Anzahl vor dem Aufruf dieser Funktion null ist, ist auch die anfänglich erwartete Anzahl für alle nachfolgenden Phasen null, was bedeutet, dass die barrier nicht wiederverwendet werden kann.
[bearbeiten] Beispiel
| Dieser Abschnitt ist unvollständig Grund: kein Beispiel |