std::atomic_flag_notify_all
Von cppreference.com
| Definiert in Header <atomic> |
||
| void atomic_flag_notify_all( std::atomic_flag* object ) noexcept; |
(1) | (seit C++20) |
| void atomic_flag_notify_all( volatile std::atomic_flag* object ) noexcept; |
(2) | (seit C++20) |
Führt atomare Benachrichtigungsoperationen durch.
Entblockt alle Threads, die in atomaren Wartevorgängen blockiert sind (d. h. std::atomic_flag_wait(), std::atomic_flag_wait_explicit() oder std::atomic_flag::wait()) auf *object, falls welche vorhanden sind; andernfalls tut es nichts.
Entspricht object->notify_all().
Inhalt |
[bearbeiten] Parameter
| Objekt | - | Zeiger auf das atomic_flag-Objekt, das benachrichtigt werden soll |
[bearbeiten] Rückgabewert
(keine)
[bearbeiten] Anmerkungen
Diese Form der Änderungsdetektion ist oft effizienter als einfaches Polling oder reine Spinlocks.
[bearbeiten] Beispiel
| Dieser Abschnitt ist unvollständig Grund: kein Beispiel |
[bearbeiten] Siehe auch
| (C++20) |
benachrichtigt mindestens einen Thread, der auf das atomare Objekt wartet (public member function of std::atomic_flag) |
| (C++20) |
benachrichtigt alle Threads, die auf das atomare Objekt warten (public member function of std::atomic_flag) |
| (C++20)(C++20) |
blockiert den Thread, bis er benachrichtigt wird und sich das Flag ändert (Funktion) |
| (C++20) |
benachrichtigt einen Thread, der in atomic_flag_wait blockiert ist (Funktion) |