Partager via


lock_guard, classe

Représente un modèle qui peut être instancié pour créer un objet dont le destructeur déverrouille un mutex.

Syntaxe

template <class Mutex>
class lock_guard;

Notes

L’argument de modèle Mutex doit nommer un type mutex.

Membres

Typedefs publics

Nom Description
lock_guard::mutex_type Synonyme de l’argument de modèle Mutex.

Constructeurs publics

Nom Description
lock_guard Construit un objet lock_guard.
lock_guard::~lock_guard, destructeur Déverrouille le mutex passé au constructeur.

Spécifications

Header :<mutex>

Espace de noms : std

lock_guard::lock_guard, constructeur

Construit un objet lock_guard.

explicit lock_guard(mutex_type& Mtx);

lock_guard(mutex_type& Mtx, adopt_lock_t);

Paramètres

Mtx
Objet de type mutex.

Notes

Le premier constructeur construit un objet de type lock_guard et verrouille Mtx. Si Mtx n’est pas un mutex récursif, il doit être déverrouillé lorsque ce constructeur est appelé.

Le deuxième constructeur ne verrouille pas Mtx. Mtx doit être verrouillé lorsque ce constructeur est appelé. Le constructeur ne lève aucune exception.

lock_guard::~lock_guard, destructeur

Déverrouille le mutex passé au constructeur.

~lock_guard() noexcept;

Notes

Si le mutex n’existe pas quand le destructeur s’exécute, le comportement est indéfini.

Voir aussi

Informations de référence sur les fichiers d’en-tête
<mutex>