std::experimental::latch
Von cppreference.com
< cpp | experimental
| Definiert im Header <experimental/latch> |
||
| class latch; |
(Concurrency TS) | |
Die Klasse latch ist ein Abwärtszähler vom Typ ptrdiff_t, der zur Synchronisation von Threads verwendet werden kann. Der Wert des Zählers wird bei der Erstellung initialisiert. Threads können auf der latch blockieren, bis der Zähler auf Null dekrementiert ist. Es gibt keine Möglichkeit, den Zähler zu erhöhen oder zurückzusetzen, was die latch zu einer Einweg-Barriere macht.
Im Gegensatz zu std::experimental::barrier kann std::experimental::latch von einem teilnehmenden Thread mehr als einmal dekrementiert werden.
[bearbeiten] Memberfunktionen
konstruiert eine latch(public member function) | |
| zerstört die latch (public member function) | |
| operator= [gelöscht] |
nicht kopierbar (public member function) |
dekrementiert den Zähler um 1 und blockiert, bis er Null erreicht(public member function) | |
| dekrementiert den Zähler auf nicht-blockierende Weise (public member function) | |
| prüft, ob der interne Zähler Null ist (public member function) | |
| blockiert, bis der Zähler Null erreicht (public member function) |