std::lock_guard
De cppreference.com
![]() |
This page has been machine-translated from the English version of the wiki using Google Translate.
The translation may contain errors and awkward wording. Hover over text to see the original version. You can help to fix errors and improve the translation. For instructions click here. |
Déclaré dans l'en-tête <mutex>
|
||
template< class Mutex > class lock_guard; |
(depuis C++11) | |
La classe
lock_guard
mutex est une enveloppe qui fournit un mécanisme RAII de style commode pour posséder un mutex pour la durée d'un bloc de portée . Original:
The class
lock_guard
is a mutex wrapper that provides a convenient RAII de style mechanism for owning a mutex for the duration of a scoped block. The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
You can help to correct and verify the translation. Click here for instructions.
Quand un objet est créé
lock_guard
, il tente de prendre la propriété du mutex il est donné. Lorsque le contrôle quitte le champ dans lequel l'objet a été créé lock_guard
, le lock_guard
est détruit et le mutex est libéré .Original:
When a
lock_guard
object is created, it attempts to take ownership of the mutex it is given. When control leaves the scope in which the lock_guard
object was created, the lock_guard
is destructed and the mutex is released.The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
You can help to correct and verify the translation. Click here for instructions.
La classe
lock_guard
est non copiable. Le type Mutex
fourni doit mettre en œuvre le concept BasicLockable
.Original:
The
lock_guard
class is non-copyable. The supplied Mutex
type shall implement the BasicLockable
concept.The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
You can help to correct and verify the translation. Click here for instructions.
[modifier] Types de membres
Type du membre | Définition |
mutex_type
|
Mutex
Original: Mutex The text has been machine-translated via Google Translate. You can help to correct and verify the translation. Click here for instructions. |
[modifier] Fonctions membres
construit un lock_guard, éventuellement verrouiller le mutex Original: constructs a lock_guard, optionally locking the given mutex The text has been machine-translated via Google Translate. You can help to correct and verify the translation. Click here for instructions. (fonction membre publique) | |
Détruit l'objet lock_guard, déverrouille le mutex sous-jacent Original: destructs the lock_guard object, unlocks the underlying mutex The text has been machine-translated via Google Translate. You can help to correct and verify the translation. Click here for instructions. (fonction membre publique) |
[modifier] Exemple
#include <thread> #include <mutex> int g_i = 0; std::mutex g_i_mutex; // protects g_i void safe_increment() { std::lock_guard<std::mutex> lock(g_i_mutex); ++g_i; // g_i_mutex is automatically released when lock // goes out of scope } int main() { std::thread t1(safe_increment); std::thread t2(safe_increment); t1.join(); t2.join(); }