Концепции C++: BasicLockable
Материал из cppreference.com
Концепция BasicLockable
описывает минимальные характеристики типов, которые обеспечивают семантику эксклюзивных блокировок для выполняющихся агентов (т.е. потоков).
[править] Требования
Для того, чтобы тип L
являлся BasicLockable
, для объекта m
типа L
должны выполняться следующие условия:
Выражение | Требования | Эффекты |
---|---|---|
m.lock() | Выполнение останавливается пока для текущего объекта не будет получена блокировка. Если выбрасывается исключение, то блокировка не устанавливается. | |
m.unlock() | Текущий агент должен владеть блокировкой m .
|
Освобождает блокировку, которой владеет агент. Исключения не выбрасываются. |