似乎这两个概念需要相同的方法集(即lock,unlock和try_lock)。 Mutex是否要求这些方法支持比Lockable更强的语义?
答案 0 :(得分:1)
根据§30.4.1.2/ 2:
然而,互斥锁类型应满足可锁定要求(30.2.5.3)。
§30.4.1.2/ 3补充说:
互斥锁类型应为DefaultConstructible和Destructible。如果初始化互斥锁的对象 如果类型失败,则抛出类型为system_error的异常。互斥锁类型不可复制或 可移动的。
§30.4.1.2/ 3增加了另一个要求,指定了互斥体类型使用的精确错误代码。
底线:互斥锁是可锁定的,但也增加了一些更具体的限制。