[求助]互斥量出现_L_mutex_lock_3764死锁

十斗簸箕 2009-07-27 12:03:09
系统有2个进程,1个主进程负责启动、监护子进程后,进入sleep,子进程负责处理业务。
现在发现子进程当掉后,主进程将其启动,子进程出现了死锁情况用pstack查看进程时
发现以下问题:
#0 0x005767a2 in _dl_sysinfo_int80 () from /lib/ld-linux.so.2
#1 0x00668e5e in __lll_mutex_lock_wait () from /lib/tls/libc.so.6
#2 0x005fac9b in _L_mutex_lock_3764 () from /lib/tls/libc.so.6
#3 0x00005a54 in ?? ()
#4 0x00000000 in ?? ()


哪位DX清楚_L_mutex_lock_3764 是什么原因引起的?
...全文
332 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
jiangfeng999 2009-07-31
  • 打赏
  • 举报
回复
楼主确认一下:
1.在子进程中是否有调用锁;
2.子进程为什么down,down的时候是否有释放锁;
3.主进程在哪里使用了锁呢,启动子进程前还是后呢
十斗簸箕 2009-07-29
  • 打赏
  • 举报
回复
有网友提出几个_L_mutex_lock_ 情况,http://blog.csdn.net/dyoldfish/archive/2007/08/21/1752706.aspx
十斗簸箕 2009-07-29
  • 打赏
  • 举报
回复
主要是代码太复杂,也不好整出一个demo出来,所以现在很郁闷
jiangfeng999 2009-07-29
  • 打赏
  • 举报
回复
楼主还是把这个情况做成一个demo来看看吧,这样我们是猜不出来的
jiangfeng999 2009-07-29
  • 打赏
  • 举报
回复
_L_mutex_lock_只是库函数的标签值
十斗簸箕 2009-07-28
  • 打赏
  • 举报
回复
现在问题是,我的应用是单进程单线程,mutex只是在调用了一次初始化pthread_mutex_init,实际使用中没有用到pthread_mutex_lock,所以感觉很奇怪。
信号量倒是有使用,但应该也不会报_L_mutex_lock_错误吧
ShowMan 2009-07-27
  • 打赏
  • 举报
回复
估计是两次申请一个锁产生的
  • 打赏
  • 举报
回复
现在发现子进程当掉后,主进程将其启动,子进程出现了死锁情况用pstack查看进程时

可能是没解锁,重复加锁导致的吧
yhf365 2009-07-27
  • 打赏
  • 举报
回复
把你判断子进程down掉和重新启动子进程的代码贴出来看看吧

23,116

社区成员

发帖
与我相关
我的任务
社区描述
Linux/Unix社区 应用程序开发区
社区管理员
  • 应用程序开发区社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧