|
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Member functions | ||||
| Shared locking | ||||
shared_lock::try_lock_for | ||||
| Modifiers | ||||
| Observers | ||||
| Non-member functions | ||||
template<class Rep,class Period> bool try_lock_for(conststd::chrono::duration<Rep,Period>& timeout_duration); | (since C++14) | |
Tries to lock the associated mutex in shared mode. Blocks until specifiedtimeout_duration has elapsed or the lock is acquired, whichever comes first. On successful lock acquisition returnstrue, otherwise returnsfalse. Effectively callsmutex()->try_lock_shared_for(timeout_duration).
This function may block for longer thantimeout_duration due to scheduling or resource contention delays.
The standard recommends that a steady clock is used to measure the duration. If an implementation uses a system clock instead, the wait time may also be sensitive to clock adjustments.
std::system_error is thrown if there is no associated mutex or if the mutex is already locked.
The behavior is undefined ifMutex does not meet theSharedTimedLockable requirements.
Contents |
| timeout_duration | - | maximum duration to block for |
true if the ownership of the mutex has been acquired successfully,false otherwise.
| This section is incomplete Reason: no example |
| attempts to lock (i.e., takes ownership of) the associatedTimedLockable mutex, returns if the mutex has been unavailable for the specified time duration (public member function of std::unique_lock<Mutex>)[edit] | |
| locks the associated mutex (public member function)[edit] | |
| tries to lock the associated mutex (public member function)[edit] | |
| tries to lock the associated mutex, until a specified time point (public member function)[edit] | |
| unlocks the associated mutex (public member function)[edit] |