1
我有一个构造函数,可以允许用户将一个ponter传递给一个Boost互斥锁。如果未提供互斥锁,则会员指针pMyMutex
设置为NULL
。这使得用户可以根据需要选择一些线程安全性。但是,我不能使用这种检查的scoped_lock
出于显而易见的原因:)在范围锁定之前检查可选的互斥锁
if (pMyMutex != NULL)
const boost::mutex::scoped_lock l(*pMyMutex);
//The lock is already out of scope
processStuff(x, y, z);
任何人都可以提出一个整洁和简单的解决方案,这样的要求?
这可能是我会做的,但另一种解决方案是'std :: auto_ptr'。 –
作品。谢谢 – learnvst