void lock();
Throws: Любое выброшенное исключение pm->lock(). system_error когда требуется исключение ([thread.req.exception]).
bool try_lock();
Throws: Любое выброшенное исключение pm->try_lock(). system_error когда требуется исключение ([thread.req.exception]).
template <class Clock, class Duration>
bool try_lock_until(const chrono::time_point<Clock, Duration>& abs_time);
Requires: Поставляемый Mutex тип должен соответствовать TimedLockable требованиям.
Postconditions: owns == res, где res - значение, возвращаемое вызовом try_lock_until(abs_time).
Throws: Любое выброшенное исключение pm->try_lock_until(). system_error когда требуется исключение ([thread.req.exception]).
template <class Rep, class Period>
bool try_lock_for(const chrono::duration<Rep, Period>& rel_time);
Requires: Поставляемый Mutex тип должен соответствовать TimedLockable требованиям.
Throws: Любое выброшенное исключение pm->try_lock_for(). system_error когда требуется исключение ([thread.req.exception]).
void unlock();
Throws: system_error когда требуется исключение ([thread.req.exception]).