下面的代碼:這個函數(操作符重載)線程安全嗎?
ElementType& operator[] (int key)
{
//something like boost::mutex::scoped_lock
MutexLockType lock();
if(key < 0 || key > m_bound)
throw std::range_error("access out of bound");
return m_elements[key];
}
不,它不是 - 你怎麼知道,當你的鎖被釋放時,元素不會被刪除? – Erik 2011-03-13 13:40:57