是否可以在 Android NDK 程序中从 C++ 触发 GDB 中断,该程序仍然允许程序在之后恢复?
意思是,我点击了导致 GDB 停止程序的断言,并且我希望能够按下 Eclipse 中的“播放”按钮来恢复程序,继续超出断言。
现在我正在使用:
__asm__ ("bkpt 0");
这会触发程序停止,并将我带到触发它的代码行,但之后不允许我继续。
GDB 在程序停止时输出以下内容。
(gdb)
82 info signal SIGBUS
&"info signal SIGBUS\n"
~"Signal Stop\tPrint\tPass to program\tDescription\n"
~"SIGBUS Yes\tYes\tYes\t\tBus error\n"
82^done
(gdb)
如果此时我按“恢复”,我会在 LogCat 中得到以下输出:
Fatal signal 11 (SIGSEGV) at 0xfffffffd (code=1)
也许我的问题是如何抛出非致命的休息?