关闭

linux signal处理中的几个问题(suse下莫名其妙死锁的处理)

376人阅读 评论(0) 收藏 举报

最近发现在腾讯的CVM上,服务器总是平凡的死锁
后查明真像为

当你发生sig 11的异常时,会进入处理函数 signalHandler
同时此时生成相应的dump file时间,在这里我调用了函数 localtime 函数。

此函数会在内部实现时调用malloc函数,而此函数有锁是不可重入函数,所以这个时候你会发现dump写不出来,而且所有程序死锁了。

实际上从程序角度来看此处已经崩溃才触发的,所以其一切都是在合理范围内的。

只是缺乏相应的提示信息,这点LINUX的确有点欠妥。


0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:22727次
    • 积分:496
    • 等级:
    • 排名:千里之外
    • 原创:26篇
    • 转载:1篇
    • 译文:0篇
    • 评论:4条
    文章分类
    最新评论