zoukankan      html  css  js  c++  java
  • Linux相关——关于gdb的checkpoint & breakpoints指令

    1,checkpoint

    ,,,这个指令简直,,,相见恨晚啊,居然现在才发现,。。

    好吧来介绍一下这个指令:checkpoint(检查点)

    我们调试程序,常常会出现好不容易发现了错误,却已经跑完那个地方了,或者纯属手残直接跑到下一步了(就是我)

    这时如果我们又要重新跑一遍来在错误处停下是很浪费时间的,(我就经常跑十多次,每次都错过,,,,)

    这个时候就可以用到checkpoint了

    使用方法:在程序运行的时候使用checkpoint,它会在当前运行状态设置一个快照,于是当你下一次错过调试点的时候,你就可以回到这个快照继续!而不是重新开始!!!

    restart xxx   重新从第xxx号快照开始运行

    万一我们忘记了对应位置的快照编号怎么办呢?

    没关系我们有info

    info checkpoint(s)   查看快照信息

    注意如果程序被终止,那么已保存的快照将会消失。(出现段错误也属于程序被强行终止)

     

     2,save breakpoints

    这个也是非常有用啊,有时候设置断点很多,但删除了之后(重新调试)想恢复哪些断点怎么办?

    难道一个一个手敲?

    不,我们有save breakpoints哈哈哈哈哈

    食用方法:在gdb的时候,已有断点的状态,我们输入save breakpoints gdb.cfg(任意文件名+任意后缀)(其实我也不知道是不是任意后缀都可以,,,不过目前试过.in 和 .cfg都是可以的

    然后当前状态下所有的断点信息就被保存到了gdb.cfg文件中,于是当下一次我们想要恢复断点时,我们只需要输入:

    source gdb.cfg(上次保存的文件名)即可

    不过这个指令是增加断点,不会删除当前的断点的,

    也就是说如果你当前有一个之前没有的断点,不用担心使用了之后会把你现在的断点删除,这个指令的作用只是增加,不是覆盖

  • 相关阅读:
    JQuery源码解析-Dom加载过程
    多个script标签的作用域
    JQuery源码解析-JQuery的工具方法(1)
    JQuery源码解析-JQuery的工具方法
    JQuery源码解析-JQuery.extend()方法
    JQuery源码解析-添加JQuery的一些方法和属性
    中兴捧月算法精英挑战赛-迪杰斯特拉派
    C语言中的内存相关问题
    动态内存管理
    虚函数与虚继承小结
  • 原文地址:https://www.cnblogs.com/ww3113306/p/9165403.html
Copyright © 2011-2022 走看看