我想问一下语法:
boost::scoped_lock(mutex);
是对的吗?编译过程没有任何问题。
答案 0 :(得分:2)
不,scoped_lock
是一个变量,当执行离开它的范围时,它会解锁互斥锁。您应该像以下一样使用它:
boost::scoped_lock var_lock(mutex);
示例:
if(true){ // scope
boost::scoped_lock var_lock(mutex);
// mutex locked here
}
// var_lock destroyed, mutex unlocked