std::lock_guard<Mutex>::lock_guard
From cppreference.com
< cpp | thread | lock guard
explicit lock_guard( mutex_type& m ); |
(1) | (since C++11) |
lock_guard( mutex_type& m, std::adopt_lock_t t ); |
(2) | (since C++11) |
lock_guard( const lock_guard& ) = delete; |
(3) | (since C++11) |
Acquires ownership of the given mutex m
.
1) Effectively calls m.lock().
2) Acquires ownership of the mutex m without attempting to lock it. The behavior is undefined if the current thread does not hold a non-shared lock (i.e., a lock acquired by
lock
, try_lock
, try_lock_for
, or try_lock_until
) on m
.3) Copy constructor is deleted.
The behavior is undefined if m
is destroyed before the lock_guard
object is.
Parameters
m | - | mutex to acquire ownership of. |
t | - | tag parameter used to select non-locking version of the constructor. |
Exceptions
1) Throws any exceptions thrown by m.lock().
2) Throws nothing.