当前位置:  技术问答>linux和unix

gdb调试中command命令是做什么用的

    来源: 互联网  发布时间:2016-07-11

    本文导语:  1.如题,gdb调试时command和end配对使用,为什么要这样用,作用是什么? 2.下面两句的具体意义是什么 handle SIG35 SIGUSR2 nostop noprint set height 0 | handle是用来设置如何处理一个的信号 (gdb) help ...

1.如题,gdb调试时command和end配对使用,为什么要这样用,作用是什么?
2.下面两句的具体意义是什么
handle SIG35 SIGUSR2 nostop noprint
set height 0

|
handle是用来设置如何处理一个的信号
(gdb) help handle
Specify how to handle a signal.
Args are signals and actions to apply to those signals.
Symbolic signals (e.g. SIGSEGV) are recommended but numeric signals
from 1-15 are allowed for compatibility with old versions of GDB.
Numeric ranges may be specified with the form LOW-HIGH (e.g. 1-5).
The special arg "all" is recognized to mean all signals except those
used by the debugger, typically SIGTRAP and SIGINT.
Recognized actions include "stop", "nostop", "print", "noprint",
"pass", "nopass", "ignore", or "noignore".
Stop means reenter debugger if this signal happens (implies print).
Print means print a message if this signal happens.
Pass means let program see this signal; otherwise program doesn't know.
Ignore is a synonym for nopass and noignore is a synonym for pass.
Pass and Stop may be combined.

set height是用来设置gdb一页显示多少行。
(gdb) help set height
Set number of lines gdb thinks are in a page.

|
在gdb中打一下help就知道了,command/end是自定义设置遇到断点时执行的操作。

(gdb) help command
Set commands to be executed when a breakpoint is hit.
Give breakpoint number as argument after "commands".
With no argument, the targeted breakpoint is the last one set.
The commands themselves follow starting on the next line.
Type a line containing "end" to indicate the end of them.
Give "silent" as the first line to make the breakpoint silent;
then no output is printed when it is hit, except what the commands print.

|
SIG35 SIGUSR2 是系统里的两个消息。意思应该应该是调试时候碰到这两个消息,程序不停止执行,也不打印信息。

|
LS说的对,是系统的两个信号,程序在调试运行过程中如果遇到这两个信号默认会被中断的,加入这两句就不会被终止了,也不会有打印信息出现。

|


正解,在gdb进行多线程调试的时候,经常要有 handle SIG32 nostop noprint

    
 
 

您可能感兴趣的文章:

  • 如何使用linux下gdb来调试python程序
  • gdb调试时命令行参数如何输入?比如main(int argc,char **argv)中,我要把一个filename作为argv[1]传入给gdb调试
  • 请问gdb是不是只能调试gcc编译的程序,在unix下用其它编译器编译的程序是不是不一定能用gdb调试的?
  • linux gdb: 我在一台机器上编译的程序用GDB可以调试,把程序放到另外一台机器上调试,调试信息就没有了 这是什么原因呢?
  • GDB调试 GDB挂了。。。
  • gdb 如何调试带命令行参数的程序 如 gdb a.out arg1,arg2
  • linux下用gdb调试程序感觉非常不方便,不知道大家使用的什么工具进行调试的呀?
  • 关于GDB无法调试segmentaton fault的问题,调试就死机
  • GDB调试问题,多共享库调试
  • gdb 怎么调试socket程序
  • 程序调试工具 GDB
  • 写调试器(像gdb)的一般思路是什么
  • gdb调试时的文件格式问题
  • gdb调试的问题,求高手。
  • gdb如何进行调试?
  • gdb调试动态链接库
  • 关于gdb调试资料---详细的
  • 哪位兄弟知道?gdb如何调试动态连接库
  • 在linux下除了gdb外还有没其他好用的调试器?
  • 在windows下编译和调试远程GDB BVRDE
  • gdb 调试
  • gdb的start命令不能用?求解
  • 用gdb调试时如何将命令行参数传入?
  • 与GDB的commands命令有关
  • gdb调试问题,关于list命令的
  • gdb是什么命令跳到下一个断点
  • gdb下的watch命令没有作用,求助
  • gdb调试时next命令为什么不走return语句?
  • linux gdb 没有符号表被读取。请使用 "file" 命令。
  • gdb调试出现奇怪问题 , 怎么老围着 init.c 转? list , break 命令失效?!
  • GDB调试中遇到的问题: 用list命令不能列出源代码? 提示信息: 符号表不被装载。使用"文件" 命令 ???
  •  
    本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
    本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • 使用gdb 时, command not found , linux里不是应该有这个工具吗?
  • 使用gcc gdb的大牛进来说说gdb的强大之处在哪。我刚学linux了,vim我确实体会到了其强大之处。而对gcc gdb,体会不到gdb这工具的强大之处。
  • 请教 make gdb-6.4 出现 make[4]: Entering directory `/tmp/gdb-6.4/gdb/doc'
  • gdb 使用问题请教
  • gdb的问题,请教,会者不难,快来拿分
  • 在rh9上无法使用gdb是怎么回事呢
  • gdb高手请指教
  • 请问,有人研究过gdb-insight源码吗?
  • gdb调试
  • Linux下gdb如何追踪进入子进程??急急7777777777777
  • 如何编译gdb
  • 怎样在windows中编译生成gdb
  • gdb升级的问题
  • 如何阅读GDB源代码?
  • 我的gdb为什么不能设置logging?
  • 使用GDB调试程序,如何正确的向程序传递参数.
  • 找高手:gdb脚本传递参数问题
  • gdb的时候代码 next显示的代码乱了
  • gdb下用shell写环境变量的问题
  • gdb是放在Red Hat Linux 9.0的什么位置?
  • 有关GCC和GDB


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3