libstd ++中的C ++ map括号运算符

时间:2015-12-14 19:37:23

标签: c++ dictionary gcc implementation libstdc++

我知道C ++ map括号运算符是非const的。但是,如果我们将m [key]称为key,那么gcc实现是否实际上会改变地图 存在于地图m?

更具体的问题:如果一个线程执行非常量括号运算符,我们是否可以继续依赖其他有权访问m的线程来从m读取数据?

1 个答案:

答案 0 :(得分:2)

  

更具体的问题:如果一个线程执行非常量括号运算符,我们是否可以继续依赖其他有权访问m的线程来从m读取数据?

不,你不能。标准库中的容器本身不是线程安全的。您将需要围绕它们的代码来访问它们是线程安全的。