【发布时间】:2013-03-14 19:41:21
【问题描述】:
我对 shared_ptr 和 mutex(增强或不增强)这两个概念都很陌生。我正在尝试在我的课程中使用它:
typedef boost::shared_mutex Lock;
typedef boost::unique_lock< Lock > WriteLock;
typedef boost::shared_lock< Lock > ReadLock;
class subscriptionInfo
{
public:
//this is not a copy constructible class. so I have to use shared pointer
boost::shared_ptr<Lock> myLock;
...
}
...
std::vector<DATA_MSG_PTR>& subscriptionInfo::getIncoming() {
ReadLock Lock(myLock);
return incoming;
}
错误提示:
error: no matching function for call to ‘boost::shared_lock<boost::shared_mutex>::shared_lock(boost::shared_ptr<boost::shared_mutex>&)’
如果你能帮我找出我搞砸的地方以及如何解决它,我将不胜感激。 谢谢
【问题讨论】:
标签: boost locking shared-ptr boost-thread