命令 / GDB / 多进程调试 + 多线程调试
一、多进程调试
命令 | 值 | 功能 |
follow-fork-mode | parent | 进入父进程。(默认) |
child | 进入子进程。 | |
datch-on-fork | on | 调用 fork 之后,未被调试的进程正常运行。(默认) |
off | 调用 fork 之后,未被调试的进程被阻塞。 | |
info inferiors | (null) | 查看进程信息。 |
inferior | num | 切换到 num 进程。 |
对于 gdb 来说,指令 datch-on-fork 就是想询问大家 gdb debugger 是否需要与 child fork 分离?分离就意为着 child fork 可以摆脱 gdb 的约束,从而无忧无虑的运行。如果该指令为 on,则 child fork 正常运行即可,否则阻塞。
二、多线程调试
命令 | 值 | 功能 |
scheduler-locking | off | 调试本线程时,无论使用 n、s还是 c 指令,其他线程正常运行。(默认) |
on | 调试本线程时,无论使用 n、s还是 c 指令,其他线程均阻塞。 | |
step |
调试本线程时, 使用 n 和 s 时,其他线程阻塞。 使用 c 时,其他线程正常运行。 |
|
info threads | (null) | 查看本进程所有线程的信息。 |
thread | num | 切换到编号为 num 线程。该编号是由 gdb 提供的。 |
对于 gdb 来说,指令 scheduler-locking 就是想询问大家 gdb debugger 是否需要对其他线程的运行加锁?当为 on 时,就实时加锁,off 时为永不加锁,step 时为只在单步下加锁。
(SAW:Game Over!)
命令 / GDB / 多进程调试 + 多线程调试相关推荐
- Linux gdb多进程、多线程调试
目录 常用命令 堆栈相关命令 更为详细的断点调试 gdb多进程调试 gdb多线程调试 前言 gdb 是 linux 平台下进行程序调试的最常用的工具.简单的程序调试就是加断点,然后一步一步让程序运行, ...
- Linux gdb调试(4):多进程与多线程调试
一,gdb的基础知识 1>介绍: gdb是Linux环境下的代码调试工具. 2>使用:需要在源代码生成的时候加上 -g 选项. 3>开始使用: gdb binFile 4>退出 ...
- C语言gdb调试之精髓 | gdb调试多线程
C语言gdb调试之精髓(常用命令.多进程.多线程.程序日志) 起语: 版权声明: C语言技术网原创文章,转载请说明文章的来源.作者和原文的链接. 来源:C语言技术网(www.freecplus.net ...
- gdb调试: 多线程-宏-条件断点
GDB中应该知道的几个调试方法 七.八年前写过一篇<用GDB调试程序>,于是,从那以后,很多朋友在MSN上以及给我发邮件询问我关于GDB的问题,一直到今天,还有人在问GDB的相关问题.这么 ...
- 利用GDB进行多线程调试
一.多线程调试 多线程调试重要就是下面几个命令: info thread 查看当前进程的线程. thread <ID> 切换调试的线程为指定ID的线程. break file.c:100 ...
- GDB常用调试命令以及多进程多线程调试
今天把所有的GDB常用的调试命令都过了一遍,尤其是多线程调试.所以先做个总结,以免忘记.以后如果有新的有用的命令会继续追加. 本文地址:(LYanger的博客:http://blog.csdn.net ...
- gdb调试多进程和多线程命令 .
1. 默认设置下,在调试多进程程序时GDB只会调试主进程.但是GDB(>V7.0)支持多进程的 分别以及同时 调试,换句话说,GDB可以同时调试多个程序.只需要设置follow-fork-mod ...
- gdb调试多进程和多线程命令
1. 默认设置下,在调试多进程程序时GDB只会调试主进程.但是GDB(>V7.0)支持多进程的 分别以及同时 调试,换句话说,GDB可以同时调试多个程序.只需要设置follow-fork-mod ...
- GDB 调试多进程或者多线程应用
GDB 是 linux 系统上常用的 c/c++ 调试工具, 功能十分强大. 对于较为复杂的系统, 比如多进程系统, 如何使用 GDB 调试呢? 考虑下面这个三进程系统 : 进程 ProcessChi ...
最新文章
- html用vue传递数据,Vue组件及数据传递详解
- python最新版本-官方宣布不再维护Python2,并每年发布一个新版本
- HDU1226 搜索 bfs xingxing在努力
- z-index在IE中的迷惑
- 建设开发者生态:6项华为API管理原则落地
- 在modelarts上部署backend为TensorFlow的keras模型
- linux僵尸进程理解,聊聊Linux系统中的僵尸进程
- 第一次申请去美国面签,需要注意哪些事项提高成功率?
- Python数据分析第二周总结
- LabVIEW以太网仪器控制
- 凤凰系统运行linux,凤凰系统率先升级内核到Linux4.9,支持更多新硬件
- matlab随机抽样模拟,随机抽样一致性算法(matlab)
- freeswitch简介
- SolidWorks 2010 SP0.0 最新下载+序列号 注册机及方法
- ESP8266获取B站粉丝数
- 简单聊聊为什么说外包不好?
- perl data::dumper 模块使用
- 假如有这样一种生活……
- C++,OpenCV 中template(模板)的简单理解
- python学习笔记3
热门文章
- UIView CALayer
- dubbo源码分析系列——dubbo-cluster模块源码分析
- Oracle EBS-SQL (QA-1):检查超出检验周期的检验数据.sql
- PlateSpin forge V2P回推步骤。
- 检正email的格式
- 2020 操作系统第二天复习(习题总结)
- SpringBatch tasklet实现和用法(十)
- golang map的定义语法
- sonarqube启动报错解决办法:Process exited with exit value [es]: 143
- Spark集群搭建+基于zookeeper实现高可用HA