|
|
|
TheLockable requirements extends theBasicLockable requirements to include attempted locking.
Contents |
For typeL
to beLockable, it must meet the above condition as well as the following:
Expression | Effects | Return value |
---|---|---|
m.try_lock() | Attempts to acquire the lock for the current execution agent (thread, process, task) without blocking. If an exception is thrown, no lock is obtained. | true if the lock was acquired,false otherwise |
Thetry_lock
member functions obtains a non-shared lock onm on success.
The following standard library types satisfyLockable requirements:
(C++11) | provides basic mutual exclusion facility (class)[edit] |
(C++11) | provides mutual exclusion facility which can be locked recursively by the same thread (class)[edit] |
(C++11) | provides mutual exclusion facility which can be locked recursively by the same thread and implements locking with a timeout (class)[edit] |
(C++17) | provides shared mutual exclusion facility (class)[edit] |
(C++14) | provides shared mutual exclusion facility and implements locking with a timeout (class)[edit] |
(C++11) | provides mutual exclusion facility which implements locking with a timeout (class)[edit] |