Chinaunix
标题:
如何判断map是否已清除
[打印本页]
作者:
jd808
时间:
2016-01-23 11:45
标题:
如何判断map是否已清除
if(pcon->user_module_fd!=NULL && pcon->user_module_fd.size()>0)
pcon->user_module_fd.clear();
复制代码
我都这样判断了,还出现*** Error in `./Xgateway': double free or corruption (fasttop): 0x00007f62400009e0 ***
通过debug发现就是这个pcon->user_module_fd.clear();造成的。
作者:
littledick
时间:
2016-01-25 17:16
应该是两个或以上线程同时在操作产生的。
你自己定义一个map,连续clear()绝对不会错。
作者:
jd808
时间:
2016-01-25 17:42
littledick 发表于 2016-01-25 17:16
应该是两个或以上线程同时在操作产生的。
你自己定义一个map,连续clear()绝对不会错。
确实是多线程,我有懒得加锁,因为这个并不常用,基本就是服务器和服务器之间建立连接,而服务器又很少重启。
作者:
windoze
时间:
2016-01-25 22:24
回复
3#
jd808
@giantchen
说过,凡是在网上问要不要加锁的,都需要加锁。
欢迎光临 Chinaunix (http://bbs.chinaunix.net/)
Powered by Discuz! X3.2