问题
最近使用的MAC经常出现卡顿和发烫的问题,严重影响开发效率和mac的使用,于是决心排查一番。最开始是重启,但是发现并没什么用。于是使用top
命令发现占用CPU高的都是Code Helper
这个进程,并且会随着VSCode工程打开的个数增加。于是在网上搜索了一番,发现大部分都是设置什么配置,但是发现并没什么用。同时也借助ChatGPT,得到了一些提示,可能是和安装的插件有关,于是进一步搜索,找到了VSCode cpu占用过高问题排查这篇文章,看了文章内容也挺有意思的,于是记录下。
使用流程
- 基本原理是:根据二分查找一步步禁用插件,直到找到占用CPU高的插件。
使用步骤:
Cmd+Shift+P
打开命令窗口,输入Start Extension bisect
,如下所示
- 点击
开始扩展二分等分
后,得到下面的界面
分别说明下面下面3个按钮的作用:
- Good now:禁用了插件后,cpu利用率正常,说明有问题的插件就在禁用的这批插件中,二分查找可以继续在这批插件中检索。
- This is bad:禁用了插件后,cpu利用率不正常,说明有问题的插件在另外一半的件中,二分查找可以继续在另外一批的插件中检索。
- Stop Bisect:停止搜索
具体操作流程就是利用top
命令观察Code Helper
的CPU利用率是否还是比较高,如果比较高就点击This is bad
,反之则点击Good now
。经过不断地点击反馈,最终可以找到占用CPU高的插件是:Settings Sync
。
查看插件说明,该插件也不再更新了,并且该功能也已经集成到VSCode自带的功能了,直接卸载掉就可以了。
卸载完之后,mac流畅和安静多了。续航能力又可以持续更久了。
总结
利用二分查找来排查插件的问题,是一个非常有意思的思路,也是我们在生活中可以用到的一些技巧。常见的数据结构和算法还是挺有用的,善用它可以大大提高效率。