table of contents
std::unique_lock::operator=(3) | C++ Standard Libary | std::unique_lock::operator=(3) |
NAME¶
std::unique_lock::operator= - std::unique_lock::operator=
Synopsis¶
unique_lock& operator=( unique_lock&& other ); (since C++11)
Move assignment operator. Replaces the contents with those of other using
move
semantics.
If prior to the call *this has an associated mutex and has acquired ownership
of it,
the mutex is unlocked.
Parameters¶
other - another unique_lock to replace the state with
Return value¶
*this
Exceptions¶
Throws nothing.
Defect reports
The following behavior-changing defect reports were applied retroactively to
previously published C++ standards.
DR Applied to Behavior as published Correct behavior
the move assignment operator was noexcept,
LWG 2104 C++11 but it may it is not noexcept
throw an exception in the case of undefined
behavior^[1]
1. ↑ For example, *this is constructed with std::adopt_lock, but the
calling thread
does not have the ownership of the associated mutex. In this case, *this
cannot
properly release the ownership of the associated mutex, and it may result in
an
exception to be thrown.
2024.06.10 | http://cppreference.com |