unique_lock Class

Represents a template that can be instantiated to create objects that manage the locking and unlocking of a mutex.

template<class Mutex>
class unique_lock;

The template argument Mutex must name a mutex type.

Internally, a unique_lock stores a pointer to an associated mutex object and a bool that indicates whether the current thread owns the mutex.

Name

Description

unique_lock::mutex_type

Synonym for the template argument Mutex.

Name

Description

unique_lock::unique_lock Constructor

Constructs a unique_lock object.

unique_lock::~unique_lock Destructor

Releases any resources that are associated with the unique_lock object.

Name

Description

unique_lock::lock Method

Blocks the calling thread until the thread obtains ownership of the associated mutex.

unique_lock::mutex Method

Retrieves the stored pointer to the associated mutex.

unique_lock::owns_lock Method

Specifies whether the calling thread owns the associated mutex.

unique_lock::release Method

Disassociates the unique_lock object from the associated mutex object.

unique_lock::swap Method

Swaps the associated mutex and ownership status with that of a specified object.

unique_lock::try_lock Method

Attempts to obtain ownership of the associated mutex without blocking.

unique_lock::try_lock_for Method

Attempts to obtain ownership of the associated mutex without blocking.

unique_lock::try_lock_until Method

Attempts to obtain ownership of the associated mutex without blocking.

unique_lock::unlock Method

Releases ownership of the associated mutex.

Name

Description

unique_lock::operator bool Operator

Specifies whether the calling thread has ownership of the associated mutex.

unique_lock::operator= Operator

Copies the stored mutex pointer and associated ownership status from a specified object.

Header: mutex

Namespace: std

Was this page helpful?
(1500 characters remaining)
Thank you for your feedback
Show:
© 2014 Microsoft