記一次 gocode 在高版本 Go 高耗 CPU 導致的 LiteIDE 卡頓

violam發表於2020-03-13

《記一次 gocode 在高版本 Go 高耗 CPU 導致的 LiteIDE 卡頓》

先說結論: LiteIDE 用來自動補完的元件 gocode,對 Go 1.13 及以上,CPU 動不動就上 80%,儲存一下檔案也能出來 40%

然後是現象和過程: 電腦 CPU i5,使用 LiteIDE 好幾年了。但是最近兩週,LiteIDE 用起來非常卡頓,監測 CPU 經常能錄得 LiteIDE 在 20% 多,以及 gocode 經常佔用 CPU 50%,85% 等。 開始以為是公司防毒軟體問題,後來做了各種排除掃描無果。 又以為是軟體版本有問題,於是從 Go 1.13 升級到 Go 1.14 ,以及 LiteIDE 升級到 x36.3,然後還是卡。 百思不得其解,百度搜尋相關過程中,發現了有人提到 gopls 是 vscode 的另一種自動完成方案,然後吐槽 gocode 已經不維護了,並且在 GO 升級後開了 mod 以後也是爆卡。 然後才想起卡頓的開始時間點,跟我把 Go 從 1.12 升級到 1.13 正好吻合。

解決: 退回到 Go 1.12,用了 LiteIDE x36.1 後超高 CPU 的問題消失。(LiteIDE 有可能是不用退回舊版本,未證實。因為問題是 gocode)

遺留問題: LiteIDE 是個很好用的開源軟體,但是依賴的 gocode 已經力不從心了。估計後面要看看是否用 gopls 來做補完方案。

20200314 更新: 週末回在家裡做事,然後發現家裡用的是 Go 1.13.8 ,LiteIDE 為 x36.3 ,並沒有出現問題。有點困惑,可能還是跟公司的賽門鐵克防毒有很大關係,但是 gocode 印發問題是確定的。

更多原創文章乾貨分享,請關注公眾號
  • 記一次 gocode 在高版本 Go 高耗 CPU 導致的 LiteIDE 卡頓
  • 加微信實戰群請加微信(註明:實戰群):gocnio

相關文章