多线程卡死或者崩溃的时候,bt直接显示的堆栈可能不是崩溃的那个,那么就 需要分析所有的堆栈,可以采用的方式就是把所有的堆栈log下来,这样可以使用文本分析器或者编写脚本去进行处理
log所有的堆栈的方式如下:
首先要进入gdb的界面
然后一次输入如下指令:
set logging file xxxx.txt
set pagination off
set logging file on
thread apply all bt
set logging off
这样就会在当前录下生成一个xxxx.txt的文件,有所有的线程的堆栈信息