lock_guard-Klasse
Stellt eine Vorlage dar, die zum Erstellen eines Objekts instanziiert werden kann, dessen Destruktor ein mutex
-Objekt entsperrt.
Syntax
template <class Mutex>
class lock_guard;
Hinweise
Das Vorlagenargument Mutex
muss einen Mutex-Typ benennen.
Member
Öffentliche Typedefs
Name | Beschreibung |
---|---|
lock_guard::mutex_type |
Synonym für das Vorlagenargument Mutex . |
Öffentliche Konstruktoren
Name | Beschreibung |
---|---|
lock_guard | Erstellt ein lock_guard -Objekt. |
lock_guard::~lock_guard Destruktor | Entsperrt das mutex -Objekt, das an den Konstruktor übergeben wurde. |
Anforderungen
Header:<mutex>
Namespace: std
lock_guard::lock_guard-Konstruktor
Erstellt ein lock_guard
-Objekt.
explicit lock_guard(mutex_type& Mtx);
lock_guard(mutex_type& Mtx, adopt_lock_t);
Parameter
Mtx
Ein mutex type-Objekt.
Hinweise
Der erste Konstruktor erstellt ein Objekt vom Typ lock_guard
und sperrt Mtx. Wenn Mtx kein rekursiver Mutex ist, muss er entsperrt werden, wenn dieser Konstruktor aufgerufen wird.
Der zweite Konstruktor sperrt Mtx nicht. Mtx muss gesperrt werden, wenn dieser Konstruktor aufgerufen wird. Der Konstruktor löst keine Ausnahmen aus.
lock_guard::~lock_guard Destruktor
Entsperrt das mutex
-Objekt, das an den Konstruktor übergeben wurde.
~lock_guard() noexcept;
Hinweise
Wenn das mutex
-Objekt nicht vorhanden ist, wenn der Destruktor ausgeführt wird, ist das Verhalten nicht definiert.