社区
C++ 语言
帖子详情
Linux多线程下对同一个hash_map进行操作,会不会有问题?谢谢!
syouweiz
2008-08-20 03:28:21
例如:
线程1
...
for(HashMap::const_iterator i = HashMap.begin();i!=HashMap.end();i++)
{
dosomething1(i);
}
...
线程2
...
HashMap::const_iterator i = HashMap.find(key);
dosomething2(i);
...
这样会不会有问题?
...全文
85
4
打赏
收藏
Linux多线程下对同一个hash_map进行操作,会不会有问题?谢谢!
例如: 线程1 ... for(HashMap::const_iterator i = HashMap.begin();i!=HashMap.end();i++) { dosomething1(i); } ... 线程2 ... HashMap::const_iterator i = HashMap.find(key); dosomething2(i); ... 这样会不会有问题?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
4 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
daidodo
2008-08-20
打赏
举报
回复
stl里的hash_map是线程不安全的,自己需要加锁。
lin_style
2008-08-20
打赏
举报
回复
有种锁叫读写锁。。。
太乙
2008-08-20
打赏
举报
回复
如果只是读的话,应该不会有影响,要是写的话,肯定有影响!
veloting
2008-08-20
打赏
举报
回复
如果没有对HashMap进行删除添加之类的操作,只是读取的话应该没有什么问题
TBB之concurrent_
hash_map
一个并发容器允许多
线
程同时对容器访问和更改条例,典型的C++STL容器类不允许 并发更新,尝试并行更改他们引起恶化容器。STL容器能使用互斥锁来包装,目的让他们安全访问,通过只让一个
线
程同时
操作
一个容器,但是...
为什么多
线
程读写 shared_ptr 要加锁?
陈硕(giantchen_AT_gmail_DOT_com)2012-01-28我在《
Linux
多
线
程服务端编程:使用 muduo C++ 网络库》第 1.9 节“再论 shared_ptr 的
线
程安全”中写道:(shared_ptr)的引用计数本身是安全且无锁的,但对象的读写...
多
线
程
操作
stl::map引起的数据不一致
问题
的解决过程与方法
昨天晚上业务出现了一次core dump,今天早上来check生产环境的core文件的堆栈内容如下: gdb ./appname --core=core.1234 (gdb) bt 得到栈的内容如下: #0 0x00007f5634262734 in std::_Rb_...
c/c++多
线
程编程与无锁数据结构漫谈
本文主要针对c/c++,系统主要针对
linux
。本文引述别人的资料均在引述段落加以声明。
Go 中
线
程安全 map 方案选型
概述 Go 语言标准库中的 map 数据类型并不是
线
程安全的,多个 goroutine 可以并发读取同一个 map, 但是不能并发写入同一个 map, 否则
会
引发 panic。为了解决这个
问题
,实际开发中通常
会
使用下面的三种方案中的一个或...
C++ 语言
64,682
社区成员
250,490
社区内容
发帖
与我相关
我的任务
C++ 语言
C++ 语言相关问题讨论,技术干货分享,前沿动态等
复制链接
扫一扫
分享
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++
技术论坛(原bbs)
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
请不要发布与C++技术无关的贴子
请不要发布与技术无关的招聘、广告的帖子
请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下
试试用AI创作助手写篇文章吧
+ 用AI写文章