命名空间
变体
操作

C++ 命名要求: BasicLockable (自 C++11 起)

来自 cppreference.com
 
 
C++ 命名要求
 

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

[编辑] 要求

对于类型 L 来说,要成为 BasicLockable,必须满足以下条件,对于类型 L 的对象 m

表达式 先决条件 效果
m.lock() 阻塞,直到当前执行代理(线程、进程、任务)能够获取锁。如果抛出异常,则不会获取锁。
m.unlock() 当前执行代理持有 m 的非共享锁。 释放执行代理持有的非共享锁。

不抛出异常。

[编辑] 非共享锁

如果锁是通过调用 locktry_locktry_lock_fortry_lock_until 成员函数获取的,则称该锁为非共享锁

[编辑] 另请参阅