一.gdb 程序名 core名前提是应用程序编译时要加-g选项,这样看到的core信息比较多。
二.info thread 如果是多线程程序,这样可以看到每个线程的信息。但是至于程序挂在哪个线程里了要用肉眼去分辨,这个应该不难。
三.thread 1 进入第一个线程
四.bt 查看退出时的堆栈信息。
五.directory 代码所在路径 指定对应的代码,然后就可以查看代码了。
六.frame 2 查看#2,用list显示代码上下文。p打印变量
自己补充:
使程序运行时生成core
ulimit -c 查看是 0,把它设置成非 0 值
ulimit -c unlimited(不限 core 文件尺寸)
查看core文件
gdb bin/docdispatch core.6988
bt
info locals
dir 代码文件夹 加载代码
f 1 进入某个层
l 查看错误代码以及其前10
l- 查看错误代码以及其后10行
fg
info threads 显示线程
t 2 切换到线程2
bt 查看信息
转载:http://blog.chinaunix.net/uid-12274566-id-3030650.html