博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
go语言有哪些好的debug方法?
阅读量:5740 次
发布时间:2019-06-18

本文共 726 字,大约阅读时间需要 2 分钟。

作者:Davie
链接:https://www.zhihu.com/question/40980436/answer/655067839
来源:知乎
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

作为一门静态语言,支持调试是必须的。

1、godebug godebug是一个跨平台的Go程序调试工具,传统的编译型语言调试器使用底层系统调用并读取二进制文件用于调试各类符号。使用起来很麻烦而且很难移植。godebug使用不同的方法,直接把源码作为目标程序,在每一行插入调试代码,然后编译并运行。 但是目前GDB做的并不好,使用起来有这样那样的问题。

2、dlv 专业调试Go语言的一款工具。

  • 安装:go get -u
  • 配置:
    export GOROOT=/usr/lib/golang
    export GOPATH=$HOME/go
    export PATH=$PATH:$GOPATH/bin
  • 使用:
    1、dlv debug xxx.go 指定需要debug的文件
    2、进入dlv交互式窗口后,b <filename>:<line> 指定断点
    3、r arg 指定运行参数
    4、n 执行一行
    5、c 运行至断点或程序结束

3、日志输出 如果使用GoWeb框架进行开发,可以使用日志输出来进行程序调试。

```Logger.Info()Logger.Warn()Logger.Error()Logger.Debug()....```复制代码

4、开发IDE调试工具 Golang开发工具如Goland,本身自带debug调试功能。

转载于:https://juejin.im/post/5cb81b1e518825324b5848e8

你可能感兴趣的文章
bzoj 1009: [HNOI2008]GT考试
查看>>
I wrote a JSONHelper extension
查看>>
hello ROR第一个WEB页面
查看>>
通过 Xshell 5 连接 centOS 7 服务器
查看>>
11.24作业3
查看>>
Django中的信号
查看>>
为cocos2d-x 添加启动数字输入法的功能
查看>>
vue-element-table-js去重合并单元格解析【实战需求】
查看>>
white-space 属性设置如何处理元素内的空白
查看>>
uedit 富文本编辑器 图片上传 图片服务器
查看>>
什么是有监督学习和无监督学习
查看>>
ThreadLocal和ThreadLocalMap源码分析
查看>>
8.27 题解
查看>>
AFNetworking 下载文件断点续传操作
查看>>
Linux定时器
查看>>
JS数组分页
查看>>
云时代,程序员将面临的分化
查看>>
收藏的博客 -- Qt/C++学习
查看>>
Vue-cli 构建项目 的`.vue`组件中, scss中添加背景图路径问题
查看>>
各种遍历写法的比较
查看>>