当前位置: 移动技术网 > IT编程>开发语言>C/C++ > C++STL容器部分操作多线程不安全

C++STL容器部分操作多线程不安全

2018年02月12日  | 移动技术网IT编程  | 我要评论

2013年6月日历,三妻四妾歌曲链接,quzhuzhe桔子

C++STL容器部分操作多线程不安全。最近项目中发现一个c++stl容器多线程查找可能出现CPU占用率100%的问题。
问题是这样的,线程A和线程B共享一个stl::map。其中线程A对map有查找的操作,线程B对map有删除的操作。收集其core文件后发现线程A一直在map的查找中循环。看map查找函数中确实用一个while循环实现。确定为线程B删除了线程A查找的值导致线程A中陷入了map表查找死循环中。
总结:C++STL容器部分操作时多线程不安全的。在多线程情景下要使用STL容器必须考虑到这种情景。

如对本文有疑问,请在下面进行留言讨论,广大热心网友会与你互动!! 点击进行留言回复

相关文章:

验证码:
移动技术网