GDB多线程调试

    由于项目比较复杂,一个后台程序,一起来就会有10个线程,在运行过程中还会create新的线程,而且还有很多实时信号来不断的骚扰。现在简单总结如下:

进入gdb后设置:

 

//作用是禁止gdb处理某种信号。因为当程序收到信号时,gdb就会被中断,所以为了避免被消耗感染必须禁止。
handle SIG127 nostop noprint pass 

//让gdb对新创建的线程有效,否则会出现 Cannot get thread event message: debugger service failed
set follow-fork-mode child              

设置完断点并且gdb已经停在断点位置后设置,否则出现Target 'None' cannot support this command.
//把gdb固定在当前线程

set scheduler-locking on   

  • 2
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值