Difference between revisions of "cpp/named req/BasicLockable"
From cppreference.com
m (r2.7.3) (Robot: Adding de, es, fr, it, ja, pt, ru, zh) |
m (seealso mutex) |
||
Line 22: | Line 22: | ||
===See also=== | ===See also=== | ||
* [[cpp/thread|Thread support library]] | * [[cpp/thread|Thread support library]] | ||
+ | * {{concept|Mutex}} | ||
* {{concept|Lockable}} | * {{concept|Lockable}} | ||
* {{concept|TimedLockable}} | * {{concept|TimedLockable}} |
Revision as of 17:11, 20 September 2013
Template:cpp/concept/title Template:cpp/concept/navbar
The BasicLockable
concept describes the minimal characteristics of types that provide exclusive blocking semantics for execution agents (i.e. threads).
Requirements
For type L
to be BasicLockable
, the following conditions have to be satisfied for an object m
of type L
:
Expression | Requires | Effects |
---|---|---|
m.lock() | Blocks until a lock can be obtained for the current execution agent. If an exception is thrown, no lock is obtained. | |
m.unlock() | The current execution agent should hold the lock m .
|
Releases the lock held by the execution agent. Throws no exceptions. |