免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 3429 | 回复: 2
打印 上一主题 下一主题

gdb 调试程序 出现不能理解的错误,在线等解决方案 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2010-11-04 16:51 |只看该作者 |倒序浏览
本帖最后由 eason_zc 于 2010-11-04 17:06 编辑

我现在在linux下写一个webserver,最后在接受请求的过程中出现断错误(大概两百次正确的请求就会出现一次这样能的错误导致程序退出),用gdb调试后不能定位到出错的函数,底下是调试过程中的错误信息,麻烦各位帮我看看,到底是什么原因! 先谢谢了

Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread 0xb7fecb70 (LWP 15867)]
0x002f5198 in ?? () from /lib/tls/i686/cmov/libc.so.6
(gdb) where
#0  0x002f5198 in ?? () from /lib/tls/i686/cmov/libc.so.6
#1  0x0804b5b3 in CHttpResponse::GetResponseHeader() ()
#2  0x0804b8a4 in CHttpResponse::SendCommonFile(int) ()
#3  0x0804b7f0 in CHttpResponse:rocess(int) ()
#4  0x0804a99d in CContainer::Run(void*) ()
#5  0x080517d2 in CWorkerThread::Run() ()
#6  0x08050128 in CThread::ThreadFunction(void*) ()
#7  0x0013396e in start_thread () from /lib/tls/i686/cmov/libpthread.so.0
#8  0x0034fa4e in clone () from /lib/tls/i686/cmov/libc.so.6
(gdb) thread
[Current thread is 2 (Thread 0xb7fecb70 (LWP 15867))]
(gdb) info thread
  7 Thread 0xb57e7b70 (LWP 15872)  0x0012d422 in __kernel_vsyscall ()
  6 Thread 0xb5fe8b70 (LWP 15871)  0x0012d422 in __kernel_vsyscall ()
  5 Thread 0xb67e9b70 (LWP 15870)  0x0012d422 in __kernel_vsyscall ()
  4 Thread 0xb6feab70 (LWP 15869)  0x0012d422 in __kernel_vsyscall ()
  3 Thread 0xb77ebb70 (LWP 1586  0x0012d422 in __kernel_vsyscall ()
* 2 Thread 0xb7fecb70 (LWP 15867)  0x002f5198 in ?? ()
   from /lib/tls/i686/cmov/libc.so.6
  1 Thread 0xb7feeb30 (LWP 15866)  0x0012d422 in __kernel_vsyscall ()



还有另外一个错误 SIGPIPE的错误, 这个也很伤阿, 找不出是什么问题, 我都已经屏蔽 SIGPIPE的响应了(signal(SIGPIPE, SIG_IGN);)但是他还是一直出现



Program received signal SIGPIPE, Broken pipe.
[Switching to Thread 0xb6feab70 (LWP 16483)]
0x0012d422 in __kernel_vsyscall ()
(gdb) where
#0  0x0012d422 in __kernel_vsyscall ()
#1  0x0033feab in write () from /lib/tls/i686/cmov/libc.so.6
#2  0x002e91c4 in _IO_file_write () from /lib/tls/i686/cmov/libc.so.6
#3  0x002e8e4f in ?? () from /lib/tls/i686/cmov/libc.so.6
#4  0x002e9166 in _IO_do_write () from /lib/tls/i686/cmov/libc.so.6
#5  0x002ea690 in _IO_file_close_it () from /lib/tls/i686/cmov/libc.so.6
#6  0x002ddae8 in fclose () from /lib/tls/i686/cmov/libc.so.6
#7  0x0804b6cb in CHttpResponse::SendCommonFile(int) ()
#8  0x0804b512 in CHttpResponse:rocess(int) ()
#9  0x0804a95d in CContainer::Run(void*) ()
#10 0x08051596 in CWorkerThread::Run() ()
#11 0x0804feec in CThread::ThreadFunction(void*) ()
#12 0x0013396e in start_thread () from /lib/tls/i686/cmov/libpthread.so.0
#13 0x0034fa4e in clone () from /lib/tls/i686/cmov/libc.so.6
(gdb) info thread
  7 Thread 0xb57e7b70 (LWP 16486)  0x0012d422 in __kernel_vsyscall ()
  6 Thread 0xb5fe8b70 (LWP 16485)  0x0012d422 in __kernel_vsyscall ()
  5 Thread 0xb67e9b70 (LWP 16484)  0x0012d422 in __kernel_vsyscall ()
* 4 Thread 0xb6feab70 (LWP 16483)  0x0012d422 in __kernel_vsyscall ()
  3 Thread 0xb77ebb70 (LWP 16482)  0x0012d422 in __kernel_vsyscall ()
  2 Thread 0xb7fecb70 (LWP 16481)  0x0012d422 in __kernel_vsyscall ()
  1 Thread 0xb7feeb30 (LWP 16480)  0x0012d422 in __kernel_vsyscall ()
(gdb)

论坛徽章:
0
2 [报告]
发表于 2010-11-04 17:11 |只看该作者
你的是不是多线程程序。

论坛徽章:
0
3 [报告]
发表于 2010-11-04 18:45 |只看该作者
回复 2# rlingxing

是在多线程环境下的, 所以才很伤阿
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

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

清除 Cookies - ChinaUnix - Archiver - WAP - TOP