Documentation Home

Attempts to acquire a shared-ownership lock on the mutex associated with *this.

bool try_lock();

Preconditions:

this->mutex()!=NULL, this->owns_lock()==false.

Effects:

Calls this->mutex()->try_lock_shared().

Returns:

true if the call to this->mutex()->try_lock_shared() returned true, false otherwise.

Throws:

Any exceptions thrown by this->mutex()->try_lock_shared(). std::system_error with an error code of std::errc::operation_not_permitted if this->mutex()==NULL. std::system_error with an error code of std::errc::resource_deadlock_would_occur if this->owns_lock()==true on entry.

Postcondition:

If the function returns true, this->owns_lock()==true, otherwise this->owns_lock()==false.

Header

#include <shared_mutex>

See Also