【发布时间】:2016-02-05 09:13:23
【问题描述】:
我有一个由于 SEGV 而崩溃的多线程进程,而 GDB 显示了这个看起来很奇怪的回溯:
Thread 1 (LWP 3726):
#0 0x00000000 in ?? ()
#1 0x00000000 in ?? ()
这是一个已经退出但尚未加入的线程。我可以相信这个回溯吗?即使它已经完成,这个线程真的被安排了吗?所有其他线程似乎都处于合理状态。这是在运行 Linux 内核 3.10 的 ARM 嵌入式系统上。
【问题讨论】:
-
看起来你在堆栈指针上乱涂乱画,现在在地址 0x0 处执行,这通常会导致 SEGV。
-
你确定这不仅仅是在这个线程上下文中调用信号处理程序的事实
标签: c multithreading gdb