我有多个线程在修改STL向量和STL列表。
如果容器为空,我想避免使用锁。
下面的代码是否线程安全? 如果items是列表或映射,会发生什么情况?
class A
{
vector<int> items
void DoStuff()
{
if(!items.empty())
{
AquireLock();
DoStuffWithItems();
ReleaseLock();
}
}
}