vscode识别不了go命令(VSCode写Go更爽)

前两天 Go Team 发布了 gopls 0.5.0,这个版本最重要的改进是减少了内存占用:重写缓存模型,从而显着提高了内存使用率。具体看看值得一提的一些功能或改进。详细内容见:https://github.com/golang/tools/releases/tag/gopls/v0.5.0。

内存使用

在 issue 中有人反馈,gopls 占用资源特别离谱,我自己也有切身的体会,以至于我都抛弃了 gopls。下图是 #issue36943 中用户的反馈,11GB 内存占用,太恐怖了。

vscode识别不了go命令(VSCode写Go更爽)(1)

我现在使用 gopls 0.5.0,打开 studygolang 项目,内存占用如下:

vscode识别不了go命令(VSCode写Go更爽)(2)

其中多个 gopls 进程,是因为采用了 daemon 模式。这在这篇文章讲解过。

内存占用减少了很多,于是我毫不犹豫的启用了 gopls。

显示 GC 优化细节

这个功能感觉挺不错的。这是实验性的尝试,如果你想试用,在 gopls 节点中增加如下配置:

"gopls":{ "codelens":{ "gc_details":true } }

这时候在打开的 Go 文件顶部会出现 Toggle gc annotation details,单击它将显示 Go 编译器生成的优化诊断,再次单击将隐藏这些诊断。

vscode识别不了go命令(VSCode写Go更爽)(3)

点击启用后,在底部窗口可以看到类似这样的编译器信息:

vscode识别不了go命令(VSCode写Go更爽)(4)

更强的自动完成

这个版本增强了 autocompletion。

  • Autocompletion within import statements
  • Autocompletion within package declarations
  • Better completion suggestions in type switch case clauses and for calls to append, function literals, and unnamed.

这次升级涉及到的 issue 见:https://github.com/golang/go/milestone/138?closed=1。

,

免责声明:本文仅代表文章作者的个人观点,与本站无关。其原创性、真实性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容文字的真实性、完整性和原创性本站不作任何保证或承诺,请读者仅作参考,并自行核实相关内容。文章投诉邮箱:anhduc.ph@yahoo.com

    分享
    投诉
    首页