编译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 用来改变运行过程中的变量值