GDB多线程调试常用命令
gdb调试命令
step和next的区别?
当前line有函数调用的时候,next会直接执行到下一句 ,step会进入函数.
查看内存
(gdb)p &a //打印变量地址
gdb)x 0xbffff543 //查看内存单元内变量
0xbffff543: 0x12345678
(gdb) x /4xb 0xbffff543 //单字节查看4个内存单元变量的值
0xbffff543: 0x78 0x56 0x34 0x12
多线程调试
(gdb) info threads:查看GDB当前调试的程序的各个线程的相关信息
(gdb) thread threadno:切换当前线程到由threadno指定的线程
break filename:linenum thread all 在所有线程相应行设置断点,注意如果主线程不会执行到该行,并且启动all-stop模式,主线程执行n或s会切换过去
set scheduler-locking off|on\step 默认off,执行s或c其它线程也同步执行。on,只有当前相称执行。step,只有当前线程执行
show scheduler-locking 显示当前模式
thread apply all command 每个线程执行同意命令,如bt。或者thread apply 1 3 bt,即线程1,3执行bt。
查看调用堆栈
(gdb)bt
(gdb)f 1 帧简略信息
(gdb)info f 1 帧详细信息
断点
b test.cpp:11
b test.cpp:main
gdb attach 调试方法:
gdb->file xxxx->attach pid->这时候进程是停止的->c 继续运行
带参数调试
输入参数命令set args 后面加上程序所要用的参数,注意,不再带有程序名,直接加参数,如:
(gdb)set args -l a -C abc
list命令
list linenum 显示程序第linenum行的周围的程序
list function 显示程序名为function的函数的源程序
GDB多线程调试常用命令相关推荐
- 调试多线程 查死锁的bug gcore命令 gdb对多线程的调试 gcore pstack 调试常用命令...
gdb thread apply all bt 如果你发现有那么几个栈停在 pthread_wait 或者类似调用上,大致就可以得出结论:就是它们几个儿女情长,耽误了整个进程. 注意gdb的版本要高于 ...
- Windows下 网络调试常用命令
网络调试常用命令 Windows提供了一组实用程序来实现简单的网络配置和管理功能,这些实用程序通常以Dos命令的形式出现.用键盘命令来显示和改变网络配置,感觉像直接操纵硬件一样,不但简单方便,而且效果 ...
- GDB多线程调试(调试命令+调试演示)
多线程调试 (一)多线程调试命令 shell的命令: (1)查看当前运行的进程:ps aux | grep book (2)查看当前运行的轻量级进程:ps -aL | grep book (3)查看主 ...
- gdb调试常用命令速查(段错误调试)
编译程序时需要加上-g,之后才能用gdb进行调试:gcc -g main.c -o main gdb中命令: 回车键:重复上一命令 (gdb)help:查看命令帮助,具体命令查询在gdb中输入help ...
- GDB调试——常用命令
命令 解释 示例 file <文件名> 加载被调试的可执行程序文件. 因为一般都在被调试程序所在目录下执行GDB,因而文本名不需要带路径. (gdb) file gdb-sample ...
- gdb 不能显示变量_linux下gdb调试常用命令汇总
1.对于一个.c文件需要在编译时加上-g生成的.out文件才能使用gdb进行编译,如下图所示 2.使用gdb XX文件进入gdb调试 3.使用start开始进行调试,初始只有一个断点在main函数,可 ...
- Android调试常用命令
1.input 命令 1.1 input keyevent:可以向系统发送按键事件 1.2 input text<String>:可以接收字符串的UI 控件输入字符 2.dumpsys命令 ...
- C语言:---gdb多线程调试
1)恢复程序运行和单步调试 当程序被停住了,你可以用continue命令恢复程序的运行直到程序结束,或下一个断点到来.也可以使用step或next命令单步跟踪程序. continue [ignore- ...
- java 命令 线程栈_JVM调试常用命令——jstack命令与Java线程栈(1)
1 jstack 命令 jstack命令的主要作用是打印指定Java进程中每一个线程的工作状态,以及每个线程栈当前的方法执行顺序等详细情况.为什么jstack命令不和jmap.jinfo.jstat等 ...
最新文章
- mariadb 内存占用优化
- 如何用PyTorch进行语义分割?
- PowerShell 笔记
- Java 获取昨天、当前、明天的时间
- android banner 高度,Android Banner 的简单使用步骤
- SpringCloud Ribbon的分析
- 算法:874. 模拟行走机器人
- 4款微信公众号编辑器,哪个最好用?
- SEO与SEM区别是什么
- 未来十年的音视频,教科书级别的Android音视频开发教程,学完我成功“挤进”了抖音音视频开发岗
- localStorage使用实例-进入显示广告,点击关闭之后,刷新网页不再出现
- 2023软考考哪个证书好?
- Windows Server 2016 启用完整版任务管理器
- 知乎热议:告别“大小周”、程序员“内卷”时代终结?程序员最想学习的语言原来是这?
- 【Keras】IMDB电影情感分析(三种神经网络)
- 连接SQL server2008,并在SQL server2008中实现MySQL中group_concatd的分组;使用jsp和servlet实现页面的跳转和重写
- java怎么打开指定的浏览器_Java之——打开浏览器访问指定页面
- 欧姆龙cp1E plc和台达变频器modbus rtu通讯 变頻器可实现正反转,停止,频率的设定、加减速
- PDF解决方案(3)--PDF转SWF
- 一个女生教你怎么追MM
热门文章
- [数据库] Navicat for MySQL定时备份数据库及数据恢复
- Python之分享常用的五款动态数据可视化工具
- 【数据结构与算法】之深入解析“分割回文串”的求解思路与算法示例
- 《每日一题》842. Split Array into Fibonacci Sequence 将数组拆分成斐波那契序列
- 2017 年全国大学生电子设计竞赛试题——四旋翼自主飞行器探测跟踪系统(C 题)【本科组】2
- 2015年第六届蓝桥杯 - 省赛 - C/C++大学A组 - B. 星系炸弹
- Linux (七) 网络
- 【机器视觉】 while算子
- 【Tools】vim YouCompleteMe自动补全配置与使用
- python字典进行大写转化_python之字典的增删改查