使用RTOS在多线程应用程序中命中断点后,使用gdb进行进程崩溃

时间:2015-08-19 09:36:07

标签: multithreading gdb rtos

我正在运行多线程程序。我正在尝试使用远程调试来调试它。我已将进程附加到gdb并在代码中设置断点,以便断点在位置(动态类似于库中存在的断点位置)命中,但在动态链接库中创建新线程后应用程序崩溃码。

我在RTOS上运行此应用程序

(gdb) info threads
[New Thread 1807]
[New Thread 1808]
[New Thread 1812]
  Id   Target Id         Frame
  4    Thread 1812       0x00007ffff6911eb7 in mlockall () from /lib/libc.so.6
  3    Thread 1808       0x00007ffff7bcd20d in accept () from /lib/libpthread.so.0
  2    Thread 1807       0x00007ffff6911b69 in syscall () from /lib/libc.so.6
* 1  Thread 1804       CAppGroup::CAppGroup (this=0x65dd00, Name=..., pErrorHandlerMsgQ=0x605790) at ../../MControl/AppGroup.cpp:480
(gdb) n
481     }
(gdb) n
Program received signal SIGABRT, Aborted.
[Switching to Thread 1812]

0x00007ffff68643f7 in raise () from /lib/libc.so.6
(gdb) n
Single stepping until exit from function raise,
which has no line number information.

0 个答案:

没有答案