我有一个构造函数,可以选择允许用户将 ponter 传递给 Boost 互斥体。如果未提供互斥锁,则成员指针pMyMutex
设置为NULL
。如果他们愿意,这使用户可以选择应用一些线程安全。但是,出于明显的原因,我不能将 ascoped_lock
与这种检查一起使用:)
if (pMyMutex != NULL)
const boost::mutex::scoped_lock l(*pMyMutex);
//The lock is already out of scope
processStuff(x, y, z);
任何人都可以为这种要求提出一个简洁而简单的解决方案吗?