Namespaces
Variants
Views
Actions

std::lock

From cppreference.com
Defined in header <mutex>
template< class Lockable1, class Lockable2, class LockableN... >
void lock( Lockable1& lock1, Lockable2& lock2, LockableN& lockn... );
(since C++11)

Locks the given lockable objects lock1, lock2, ..., lockn without resulting in a deadlock. The objects are locked by calls to lock(), try_lock(), unlock() in an unspecified order.

If a call to lock() or unlock() results in an exception, unlock() is called for any locked objects before rethrowing.

Contents

[edit] Parameters

lock1, lock2, ... , lockn - the lockable objects to lock

[edit] Return value

(none)

[edit] Example

[edit] See also

(C++11)
locks specified mutexes/locks, returns false if at least one is unavailable
(function template) [edit]