Golang在Linux上如何调试
以下是Linux下调试Golang的常用方法:
-
Delve调试器(推荐)
- 安装:
go install github.com/go-delve/delve/cmd/dlv@latest
。 - 编译程序:
go build -gcflags "-N -l" -o myprogram main.go
(禁用优化和内联)。 - 启动调试:
dlv debug ./myprogram
,支持命令行交互,常用命令:break <文件:行号>
:设置断点。continue
/c
:继续执行至断点。next
/n
:单步执行(不进入函数)。step
/s
:单步执行(进入函数)。print <变量>
:查看变量值。quit
:退出调试。
- 安装:
-
GDB调试器
- 安装:
sudo apt-get install gdb
(Ubuntu/Debian)。 - 编译程序:需添加
-gcflags "-N -l"
生成调试信息。 - 启动调试:
gdb ./myprogram
,常用命令类似Delve,但部分功能受限。
- 安装:
-
图形化工具
- VSCode:安装Go插件,配置
launch.json
后直接调试,支持断点、变量查看等。 - Goland:集成调试界面,操作直观,适合复杂项目。
- VSCode:安装Go插件,配置
-
辅助调试手段
- 日志输出:使用
log
包打印关键信息。 - 性能分析:通过
pprof
工具分析CPU/内存使用。 - 并发调试:
kill -SIGQUIT
获取goroutine堆栈,或使用debug.PrintStack()
。
- 日志输出:使用
选择建议:优先使用Delve(命令行或图形界面),适合大多数场景;复杂项目可搭配VSCode/Goland提升效率。
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权请联系我们,一经查实立即删除!