gdb bt遇到sleep的情况
来源:互联网 发布:珠海长隆 知乎 编辑:程序博客网 时间:2024/06/03 12:43
attach是GDB一种重要的debug模式,在MPI程序debug中发挥重要的作用。
具体的执行步骤如下:
1) 首先在程序开始的地方添加如下代码, 注意这是个死循环,之所以用死循环就是让他一直在等待attch
{ int i = 0; char hostname[256]; gethostname(hostname, sizeof(hostname)); printf("PID %d on %s ready for attach\n", getpid(), hostname); fflush(stdout); while (0 == i) sleep(5);}
启动程序会得到如下语句
PID 15425 on XXX ready for attach
PID 15426 on XXX ready for attach
2) 启动GDB
$gdb
(gdb) attach 15425
(gdb) up // 这里的up非常重要,见misc
(gdb) set var i=1
这样跳出死循环,继续执行。
3) misc
关于GDB的使用
过去我们总觉得GDB很难用,很多debug信息都没有能显示出来,尤其是在多线程的情况下,我在使用gdb attach MPI 程序的时候找到了其中的原因,因为gdb总是不停的在尝试暂停程序抓取stack中的内容到frame,如果遇到sleep之类的情况,gdb就获取不到任何信息,在这样的情况下我们需要使用up down来切换frame。
0 0
- gdb bt遇到sleep的情况
- 遇到的最bt的手机bug
- LINUX gdb bt命令
- gdb遇到的一些问题
- 工作之中遇到的情况
- 遇到字符串比较的情况
- AndroidStudio中遇到的情况
- 对最近遇到的一些BT问题总结
- 使用GDB时遇到的问题
- gdb调试常用命令,attach,br,n,bt
- 遇到了这个奇怪的情况
- AVAudioRecorder 后台遇到的情况解决
- C 编程中遇到的几种易错情况
- Oracle编程,遇到并发的情况处理
- 使用AFNertorking遇到code-1016的情况
- MySQL数据类型不一致查询遇到的情况
- sql case when 中遇到的情况
- 关于编程中遇到inf的情况
- java笔记 泛型
- 自定义验证码发送倒计时控件
- "单例模式"-之Java,Android面试必问设计模式(3/9)
- Largest Divisible Subset
- Android:layout_gravity和android:gravity的区别
- gdb bt遇到sleep的情况
- word转化为xml 占位符被分离
- Android ActionBar完全解析,使用官方推荐的最佳导航栏(下)
- 重置gitlab管理员密码
- ACL权限
- mac OS X下配置jdk环境变量
- Ajax动态滚动加载数据
- Android通知栏微技巧,那些你所没关注过的小细节
- 序列化二叉树leetcode