[已解决]VSCode使用中CPU占用率异常暴增问题
问题现象
VSCode近期CPU使用率频繁飙升,最高可达90%以上,风扇狂转不止。即便未在使用(未导入项目情况下),其CPU占用率仍居首位,令人十分困扰。起初以为是项目配置问题,经过观察发现,空窗口打开几分钟后也会出现此情况,实在无法忍受,必须解决。
参考网上诸多解决方案后,成功解决了该问题,以下是具体处理方法。
问题分析
其实,VSCode 本身提供了一个非常好的性能分析的工具。顶部菜单栏Help
-> Open Process Explorer
,会弹出一个运行中的进程展示列表,并且明确展示了各自CPU使用率和内存大小。
观察如上图可知跟Tabnine
这个AI插件关联的extentionHost
在持续吃CPU资源。此时,我们把这个Tabnine
这个插件disable掉,多次重启vscode,观察确认未再出现CPU飙升的情况,此时我们基本可以断定是因为Tabnine
插件问题导致。这里就不去深究Tabnine
为什么会引起CPU异常问题。免费版的Tabnine
只有些基础功能,比较鸡肋,用了好多年一直懒得清理,正好趁这次机会一并清理掉了,换个时髦更智能的AI助手😄
到这里,我的问题已经基本解决了,下面部分为顺带优化工作
番外优化
插件的优化
1.将不好用或者开发者不在维护的插件卸载掉
// 例如以下这些插件来源于同一开发者(https://github.com/formulahendry),
// 存在大量未解决的issues,且已经有段时间未维护了
* vscode-auto-rename-tag
* vscode-auto-close-tag
* vscode-auto-complete-tag
2.有用但不经常用的插件我们可以先将其临时禁用掉
编辑器自身配置问题的优化(待验证)
以下这俩参数优化办法来源自stackoverflow问答社区1,本人配置完成之后未起到效果,需要自行调试验证。
-
search.followSymlinks
Controls whether to follow symlinks while searching. 这个配置选项决定了在使用 VSCode 的搜索功能时,是否跟随符号链接(symlinks)进行搜索。当设置为false时,搜索操作将不会深入到符号链接所指向的目标路径中进行搜索。2 -
settingsSync.keybindingsPerPlatform
Synchronize keybindings for each platform. 该配置与 VSCode 的设置同步功能以及不同平台(如 Windows、Mac、Linux)上的键盘快捷键(keybindings)相关。当设置为false时,表示在进行设置同步时,不会根据不同平台分别同步键盘快捷键设置。
找到自己的编辑器的settings
配置文件,增加或者变更如下参数:
{
//...,
"search.followSymlinks": false,
"settingsSync.keybindingsPerPlatform": false
}
或者直接在图形化界面操作:
总结
!!! 可能某些配置变更不是即时生效的,优化完一定要重启VSCode。重启后关注下cpu使用率,整个世界应该就安静下来了
很多情况下VSCode功能异常都是插件引起的,尝试关闭所有插件排除法来检查。另外,建议优先按照官方给出的文档调试Performance Issues。
好了,到这里说的也差不多了,以上配置优化仅适合我的MacBookPro,实际情况要根据自己电脑来调试。
Ref
- Visual Studio Code使用中CPU占用率异常暴增过高原因
- Code Helper (Plugin) generating 100% cpu usage #183454
- VSCode incredibly slow, 100% CPU usage, coming from electron_node tsserver.js CPU usage #40138
- Code HelperVSCode — Code Helper 占用 CPU 资源问题解决