table of contents
std::unique_lock::try_lock_until(3) | C++ Standard Libary | std::unique_lock::try_lock_until(3) |
NAME¶
std::unique_lock::try_lock_until - std::unique_lock::try_lock_until
Synopsis¶
template< class Clock, class Duration >
bool try_lock_until( const std::chrono::time_point<Clock,Duration>&
(since C++11)
timeout_time );
Tries to lock (i.e., takes ownership of) the associated mutex. Blocks until
specified timeout_time has been reached or the lock is acquired, whichever
comes
first. On successful lock acquisition returns true, otherwise returns false.
May
block for longer than timeout_time until has been reached.
Effectively calls mutex()->try_lock_until(timeout_time)
std::system_error is thrown if there is no associated mutex or if the mutex
is
already locked by the same thread.
Clock must meet the Clock requirements.
The program is ill-formed if std::chrono::is_clock_v<Clock> is false.
(since C++20)
Parameters¶
timeout_time - maximum time point to block until
Return value¶
true if the ownership of the mutex has been acquired successfully, false otherwise.
Exceptions¶
* Any exceptions thrown by mutex()->try_lock_until(timeout_time)
* If there is no associated mutex, std::system_error with an error code of
std::errc::operation_not_permitted
* If the mutex is already locked, std::system_error with an error code of
std::errc::resource_deadlock_would_occur
Example¶
This section is incomplete
Reason: no example
See also¶
lock locks (i.e., takes ownership of) the associated mutex
(public member function)
tries to lock (i.e., takes ownership of) the associated mutex without
try_lock blocking
(public member function)
attempts to lock (i.e., takes ownership of) the associated
try_lock_for TimedLockable mutex, returns if the mutex has been unavailable
for the
specified time duration
(public member function)
unlock unlocks (i.e., releases ownership of) the associated mutex
(public member function)
2022.07.31 | http://cppreference.com |