Namespaces
Variants

std::lock_guard<Mutex>:: lock_guard

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
std::lock_guard
Member functions
lock_guard::lock_guard
explicit lock_guard ( mutex_type & m ) ;
(1) (depuis C++11)
lock_guard ( mutex_type & m, std:: adopt_lock_t t ) ;
(2) (depuis C++11)
lock_guard ( const lock_guard & ) = delete ;
(3) (depuis C++11)

Acquiert la propriété du mutex donné m .

1) Appelle effectivement m. lock ( ) .
2) Acquiert la propriété du mutex m sans tenter de le verrouiller. Le comportement est indéfini si le thread courant ne détient pas un verrou non partagé (c'est-à-dire un verrou acquis par lock , try_lock , try_lock_for , ou try_lock_until ) sur m .
3) Le constructeur de copie est supprimé.

Le comportement n'est pas défini si m est détruit avant que l'objet lock_guard ne le soit.

Paramètres

m - mutex dont il faut acquérir la propriété
t - paramètre de tag utilisé pour sélectionner la version non bloquante du constructeur

Exceptions

1) Lance toutes les exceptions levées par m. lock ( ) .
2) Ne lance rien.