Go语言-gdb调试

编译Go语言程序的时候,传递-gcflags "-N -l"参数,这样可以忽略Go语言内部做的一些优化,聚合变量和函数等优化

go build -gcflags "-N -l"

常用命令

  • list
    显示源码,默认显示10行,例如list 15,显示十行代码,其中第15行在显示的十行里边的中间
  • break
    设置断点,后面可以跟代码行号或者函数名
  • delete
    删除断点,后面跟上断点设置的序号,这个序号可以通过info breakpoints获取相应的设置的断点序号
  • backtrace
    简写命令bt,用来打印执行的代码过程
  • info
    用来显示信息
    info locals用来显示当前执行的程序中的变量值
    info breakpoints显示当前设置的断点列表
    info goroutines显示当前执行的goroutine列表

  • print
    打印变量或者其他信息,后面跟上需要打印的变量名,

  • whatis
    用来显示当前变量的类型,后面跟上变量名

  • next
    跳到下一步 

  • continue
    用来跳出当前断点,继续执行,后面跟上参数N,跳过多上次断点

  • set variable
    用来改变运行过程中的变量值

猜你喜欢

转载自blog.51cto.com/12880687/2130241