Namespaces
Variants
Views
Actions

C++ named requirements: BasicLockable

From cppreference.com
< cpp‎ | named req
Revision as of 06:21, 18 June 2018 by Fruderica (Talk | contribs)

 
 
C++ named requirements
 

The BasicLockable requirements describe 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 (thread, process, task). 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.

See also