在gbd backtracing下生成“_Unwind_Resume”调用

时间:2011-08-31 11:42:51

标签: c++ exception gdb

以下是我要解决的问题: 我们在处理数据时有一个核心转储。回溯的结果是:

#0 0x00a99402 in __kernel_vsyscall ()
#1 0x00306df0 in raise () from /lib/libc.so.6
#2 0x00308701 in abort () from /lib/libc.so.6
#3 0x001c4530 in _gnu_cxx::_verbose_terminate_handler() () from /usr/lib/libstdc++.so.6
#4 0x001c1f35 in ?? () from /usr/lib/libstdc++.so.6
#5 0x001c12ca in ?? () from /usr/lib/libstdc++.so.6
#6 0x001c1d99 in __gxx_personality_v0 () from /usr/lib/libstdc++.so.6
#7 0x00d1c7e6 in ?? () from /lib/libgcc_s.so.1
#8 0x00d1cb62 in _Unwind_Resume () from /lib/libgcc_s.so.1
........

我已经查看了我们的应用程序的代码库,并且不清楚问题是由于未捕获的异常或其他原因(但我知道它以某种方式与异常相关联,因为_Unwind_Resume调用存在)。所以我正在尝试编写一个简单的程序,它也会因核心转储失败而且它的gdb回溯包含上面的行。

os:CentOS,编译器:gnu gcc 4.1.2,语言:c / c ++

非常感谢有关问题/代码的任何建议

0 个答案:

没有答案