std::unique_lock< _Mutex > Class Template Reference

Public Types

typedef _Mutex mutex_type

Public Member Functions

 unique_lock (const unique_lock &)=delete
 unique_lock (mutex_type &__m)
 unique_lock (mutex_type &__m, adopt_lock_t) noexcept
template<typename _Rep , typename _Period >
 unique_lock (mutex_type &__m, const chrono::duration< _Rep, _Period > &__rtime)
template<typename _Clock , typename _Duration >
 unique_lock (mutex_type &__m, const chrono::time_point< _Clock, _Duration > &__atime)
 unique_lock (mutex_type &__m, defer_lock_t) noexcept
 unique_lock (mutex_type &__m, try_to_lock_t)
 unique_lock (unique_lock &&__u) noexcept
void lock ()
mutex_type * mutex () const noexcept
 operator bool () const noexcept
unique_lockoperator= (const unique_lock &)=delete
unique_lockoperator= (unique_lock &&__u) noexcept
bool owns_lock () const noexcept
mutex_type * release () noexcept
void swap (unique_lock &__u) noexcept
bool try_lock ()
template<typename _Rep , typename _Period >
bool try_lock_for (const chrono::duration< _Rep, _Period > &__rtime)
template<typename _Clock , typename _Duration >
bool try_lock_until (const chrono::time_point< _Clock, _Duration > &__atime)
void unlock ()

Related Functions

(Note that these are not member functions.)

template<typename _Mutex >
void swap (unique_lock< _Mutex > &__x, unique_lock< _Mutex > &__y) noexcept

Detailed Description

template<typename _Mutex>
class std::unique_lock< _Mutex >

A movable scoped lock type.

A unique_lock controls mutex ownership within a scope. Ownership of the mutex can be delayed until after construction and can be transferred to another unique_lock by move construction or move assignment. If a mutex lock is owned when the destructor runs ownership will be released.

Definition at line 57 of file unique_lock.h.

Friends And Related Function Documentation

◆ swap()

template<typename _Mutex >
void swap ( unique_lock< _Mutex > &  __x,
unique_lock< _Mutex > &  __y 

Swap overload for unique_lock objects.

Definition at line 236 of file unique_lock.h.

The documentation for this class was generated from the following file: