C++ concepts: BasicLockable

< cpp‎ | concept
Revision as of 17:11, 20 September 2013 by Cubbi (Talk | contribs)

(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)

The BasicLockable concept describes the minimal characteristics of types that provide exclusive blocking semantics for execution agents (i.e. threads).

[edit] 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.

[edit] See also