免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
12下一页
最近访问板块 发新帖
查看: 7479 | 回复: 16

[C++] 【面试题】C++中map在什么情况下会引起死锁? [复制链接]

论坛徽章:
0
发表于 2013-09-12 14:15 |显示全部楼层
这个要技术过硬的才回答的了吧,没遇到过~!~

论坛徽章:
154
2022北京冬奥会纪念版徽章
日期:2015-08-07 17:10:5720周年集字徽章-年
日期:2022-10-26 16:44:2015-16赛季CBA联赛之深圳
日期:2022-11-02 14:02:4515-16赛季CBA联赛之八一
日期:2022-11-28 12:07:4820周年集字徽章-20	
日期:2023-07-19 08:49:4515-16赛季CBA联赛之八一
日期:2023-11-04 19:23:5115-16赛季CBA联赛之广夏
日期:2023-12-13 18:09:34
发表于 2013-09-12 14:28 |显示全部楼层
确实没遇到过,对于一个技术经验不足的小伙伴来说,这问的就是奇葩问题,

你确定面试官脑子没问题吧??

论坛徽章:
59
2015年亚洲杯之约旦
日期:2015-01-27 21:27:392015年亚洲杯之日本
日期:2015-02-06 22:09:41拜羊年徽章
日期:2015-03-03 16:15:432015年辞旧岁徽章
日期:2015-03-03 16:54:152015年迎新春徽章
日期:2015-03-04 09:50:282015元宵节徽章
日期:2015-03-06 15:50:392015年亚洲杯之阿联酋
日期:2015-03-19 17:39:302015年亚洲杯之中国
日期:2015-03-23 18:52:23巳蛇
日期:2014-12-14 22:44:03双子座
日期:2014-12-10 21:39:16处女座
日期:2014-12-02 08:03:17天蝎座
日期:2014-07-21 19:08:47
发表于 2013-09-12 14:41 |显示全部楼层
你反问map的实现中, 加锁了没?

大约想问里什么情况下会死循环。 答案是: map设计者出bug的情况下。

论坛徽章:
12
巳蛇
日期:2013-09-16 15:32:242015年辞旧岁徽章
日期:2015-03-03 16:54:152015年亚洲杯之约旦
日期:2015-02-11 14:38:37双鱼座
日期:2015-01-05 11:05:47戌狗
日期:2014-12-08 09:41:18戌狗
日期:2014-08-15 09:29:29双子座
日期:2014-08-05 09:17:17卯兔
日期:2014-06-08 15:32:18巳蛇
日期:2014-01-27 08:47:08白羊座
日期:2013-11-28 21:04:15巨蟹座
日期:2013-11-13 21:58:012015年亚洲杯之科威特
日期:2015-04-17 16:51:51
发表于 2013-09-12 14:44 |显示全部楼层
问一个本来就不是线程安全的容器什么时候引起死锁,这是啥意思?

恶意猜一下是不是指这个?
http://support.microsoft.com/kb/248477

论坛徽章:
0
发表于 2013-09-12 14:49 |显示全部楼层
map实现还要加锁?更糊涂了啥。。不应该把锁的粒度放到这个设施里吧回复 3# folklore


   

论坛徽章:
59
2015年亚洲杯之约旦
日期:2015-01-27 21:27:392015年亚洲杯之日本
日期:2015-02-06 22:09:41拜羊年徽章
日期:2015-03-03 16:15:432015年辞旧岁徽章
日期:2015-03-03 16:54:152015年迎新春徽章
日期:2015-03-04 09:50:282015元宵节徽章
日期:2015-03-06 15:50:392015年亚洲杯之阿联酋
日期:2015-03-19 17:39:302015年亚洲杯之中国
日期:2015-03-23 18:52:23巳蛇
日期:2014-12-14 22:44:03双子座
日期:2014-12-10 21:39:16处女座
日期:2014-12-02 08:03:17天蝎座
日期:2014-07-21 19:08:47
发表于 2013-09-12 14:52 |显示全部楼层
回复 5# ilogo1


    没加锁如何死锁? 读帖子不仔细~~~

论坛徽章:
17
处女座
日期:2013-08-27 09:59:352015亚冠之柏太阳神
日期:2015-07-30 10:16:402015亚冠之萨济拖拉机
日期:2015-07-29 18:58:182015年亚洲杯之巴勒斯坦
日期:2015-03-06 17:38:17摩羯座
日期:2014-12-11 21:31:34戌狗
日期:2014-07-20 20:57:32子鼠
日期:2014-05-15 16:25:21亥猪
日期:2014-02-11 17:32:05丑牛
日期:2014-01-20 15:45:51丑牛
日期:2013-10-22 11:12:56双子座
日期:2013-10-18 16:28:17白羊座
日期:2013-10-18 10:50:45
发表于 2013-09-12 15:00 |显示全部楼层
回复 1# ilogo1


    stl的map是非线程安全的,所以出问题只有两种可能,一是相应的库实现有bug,二是用户编程使用同步方法时有问题,map本身的有问题的可能性是很小的。

论坛徽章:
4
水瓶座
日期:2013-09-06 12:27:30摩羯座
日期:2013-09-28 14:07:46处女座
日期:2013-10-24 14:25:01酉鸡
日期:2014-04-07 11:54:15
发表于 2013-09-12 15:21 |显示全部楼层
面试官是想看看你是不是知道迭代过程中erase操作后的常见bug.

论坛徽章:
0
发表于 2013-09-12 15:26 |显示全部楼层
但是,我觉得从线程安全的角度出发不太妥,线程安全这个定位有点广泛,线程安全最为突出的问题是导致数据的不一致,加锁机制来保障,目前只能像你这么说的了,不同线程同步不当,,,或者是在同一线程中,异步信号安全出了问题。。回复 7# myworkstation


   

论坛徽章:
0
发表于 2013-09-12 15:28 |显示全部楼层
这也是个问题~迭代器失效的问题回复 8# linux_c_py_php


   
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP