温馨提示×

Golang编译后如何调试

小樊
51
2025-08-20 04:45:24
栏目: 编程语言

Golang 编译后调试常用工具及方法如下:

  1. Delve 调试器(推荐)

    • 安装go install github.com/go-delve/delve/cmd/dlv@latest
    • 启动dlv debug <可执行文件>
    • 常用命令
      • break <文件>:<行号>:设置断点
      • continue:继续执行
      • next/step:单步执行(不进入/进入函数)
      • print <变量名>:查看变量值
      • bt:查看调用栈。
  2. GDB 调试器

    • 编译时需添加调试信息go build -gcflags="-N -l" -o <可执行文件>
    • 启动gdb <可执行文件>
    • 常用命令:类似 Delve,需手动载入 Go 运行时支持。
  3. 日志调试

    • 使用标准库 log 包打印关键信息,如变量值、执行流程。
  4. 性能分析(pprof)

    • 导入 "net/http/pprof",启动 HTTP 服务后分析 CPU/内存数据。
  5. 并发问题调试

    • 使用 runtime/debug.PrintStack() 打印 goroutine 堆栈。

注意:调试前建议关闭编译器优化(-gcflags="-N -l"),确保断点准确。
复杂场景优先使用 Delve,简单问题可用日志快速定位。

0