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 depuis C++26)

Effectue des opérations de notification atomique.

S'il y a un thread bloqué dans une opération d'attente atomique (c'est-à-dire wait() ) sur * ptr , alors débloque au moins un de ces threads ; sinon ne fait rien. Cette surcharge participe à la résolution de surcharge seulement si std:: is_const_v < T > est false .

Table des matières

Notes

Cette forme de détection de changement est souvent plus efficace qu'un simple sondage ou que des verrous d'attente active purs.

Exemple

Rapports de défauts

Les rapports de défauts modifiant le comportement suivants ont été appliqués rétroactivement aux normes C++ précédemment publiées.

DR Appliqué à Comportement publié Comportement corrigé
LWG 3508
( P3323R1 )
C++20 notify_one n'avait aucun sens pour const T contraint pour n'accepter que les T non-const

Voir aussi

bloque le thread jusqu'à notification et changement de la valeur atomique
(fonction membre publique)
bloque le thread jusqu'à notification et changement de la valeur atomique
(fonction template)
notifie un thread bloqué dans atomic_wait
(fonction template)