【发布时间】:2015-02-20 01:30:23
【问题描述】:
我想创建作用域锁,但我想要类似的东西:
{
if(lockRequired)
boost::mutex::scoped_lock(Mutex); //After this line we go out of scope
/* Here I also want to have Mutex */
}
如果条件为真,我想要锁定互斥体,但在升级范围内。我知道我可以使用简单的 .lock 并在范围结束时使用 .unlock 但我有很多返回路径。我还可以在范围内创建一些 SynchronizationGuard,并将析构函数称为解锁互斥锁,但这不是干净的解决方案。一些建议?
最好的问候。
【问题讨论】: