golang代码检测工具vet|golang格式检测fmt|literal copies lock value

一、项目目录下执行:
  go vet ./...
 一般错误
  1.declared but not used
    变量定义没用
  2.unreachable code
    return/continue等代码已经返回了还有执行
  3.literal copies lock value from pool: sync.Pool contains sync.noCopy
    sync.Pool 发生了copy,一般就是代码new或者var发成了指针复制,,如下面
    ---------------------------修改前--------------------------------------------
    pool := sync.Pool{
       New: func() interface{} { return bufio.NewReaderSize(nil, size) },
    }
    return &BufferReaderPool{pool: pool}
    --------------------------修改后----------------------------------------------
    return &BufferReaderPool{pool: sync.Pool{
       New: func() interface{} { return bufio.NewReaderSize(nil, size) },
    }}
 二、代码风格
  go fmt ./...
  会自动格式化目录下所有代码文件
 三、静态检测
  go build -race

 

 

参考:https://mp.weixin.qq.com/s?__biz=MzkyMzIyNjIxMQ==&mid=2247484558&idx=1&sn=34b1f3112657c823cbc35e3e35ffee6b&source=41#wechat_redirect

posted on   studyphp  阅读(666)  评论(0编辑  收藏  举报

相关博文:
阅读排行:
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· 单线程的Redis速度为什么快?
· 展开说说关于C#中ORM框架的用法!
· Pantheons:用 TypeScript 打造主流大模型对话的一站式集成库

导航

< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5

统计

点击右上角即可分享
微信分享提示