Namespaces
Variants

std::atomic_ref<T>:: notify_one

From cppreference.net

Concurrency support library
Threads
(C++11)
(C++20)
this_thread namespace
(C++11)
(C++11)
Cooperative cancellation
Mutual exclusion
Generic lock management
Condition variables
(C++11)
Semaphores
Latches and Barriers
(C++20)
(C++20)
Futures
(C++11)
(C++11)
(C++11)
Safe reclamation
Hazard pointers
Atomic types
(C++11)
(C++20)
Initialization of atomic types
(C++11) (deprecated in C++20)
(C++11) (deprecated in C++20)
Memory ordering
(C++11) (deprecated in C++26)
Free functions for atomic operations
Free functions for atomic flags
void notify_one ( ) const noexcept ;
(constexpr seit C++26)

Führt atomare Benachrichtigungsoperationen aus.

Wenn ein Thread in einem atomaren Wartevorgang blockiert ist (d.h. wait() ) auf * ptr , dann wird mindestens ein solcher Thread entblockiert; andernfalls geschieht nichts. Diese Überladung nimmt nur an der Überladungsauflösung teil, wenn std:: is_const_v < T > gleich false ist.

Inhaltsverzeichnis

Hinweise

Diese Form der Änderungserkennung ist oft effizienter als einfaches Polling oder reine Spinlocks.

Beispiel

Fehlerberichte

Die folgenden verhaltensändernden Fehlerberichte wurden rückwirkend auf zuvor veröffentlichte C++-Standards angewendet.

DR Angewendet auf Verhalten wie veröffentlicht Korrektes Verhalten
LWG 3508
( P3323R1 )
C++20 notify_one war bedeutungslos für const T eingeschränkt, um nur non-const T zu akzeptieren

Siehe auch

blockiert den Thread, bis eine Benachrichtigung erfolgt und der atomare Wert sich ändert
(öffentliche Elementfunktion)
blockiert den Thread, bis eine Benachrichtigung erfolgt und der atomare Wert sich ändert
(Funktionstemplate)
benachrichtigt einen in atomic_wait blockierten Thread
(Funktionstemplate)