std::unique_lock<Mutex>::try_lock (3) - Linux Manuals

std::unique_lock<Mutex>::try_lock: std::unique_lock<Mutex>::try_lock

NAME

std::unique_lock<Mutex>::try_lock - std::unique_lock<Mutex>::try_lock

Synopsis


bool try_lock(); (since C++11)


Tries to lock the associated mutex without blocking. Effectively calls mutex()->try_lock().
std::system_error is thrown if there is no associated mutex or if the mutex is already locked by this std::unique_lock.

Parameters


(none)

Return value


true if the ownership of the mutex has been acquired successfully, false otherwise.

Exceptions


* Any exceptions thrown by mutex()->try_lock() (Mutex types do not throw in try_lock, but a custom Lockable might)


* 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 by this std::unique_lock, std::system_error with an error code of std::errc::resource_deadlock_would_occur

Example


 This section is incomplete
 Reason: no example

See also


               locks the associated mutex
lock (public member function)
               attempts to lock the associated TimedLockable mutex, returns if the mutex has been unavailable for the specified time duration
try_lock_for (public member function)
               tries to lock the associated TimedLockable mutex, returns if the mutex has been unavailable until specified time point has been reached
try_lock_until (public member function)
               unlocks the associated mutex
unlock (public member function)