年前新购了一台 MacBook Pro,原本想着 M 系列机器性能足够强,日常开发应该会非常安静。 结果实际用下来却有点反常:风扇时不时突然拉高,机身温度也明显上来,偶尔还伴随着一点轻微卡顿。
按理说,这台机器的性能不该这么“娇气”。 所以第一反应不是怀疑硬件,而是怀疑后台有进程在偷偷吃资源。
先看 Activity Monitor
打开活动监视器之后,很快就能看到异常进程。

列表里有一个 Code Helper 占用比较明显。
这个名字看着不算陌生,但也不够直接,于是继续往下查。
确认进程来源
我又在终端里把进程信息拉出来看了一眼,基本可以确认这是 VS Code 相关的后台进程。

再结合最近一段时间的使用习惯,其实原因也就不难猜了:
这阵子前端项目开得比较多,仓库里 node_modules、dist、临时目录这些内容都不少。
VS Code 一边做文件搜索,一边做文件监听,项目一多,压力就容易堆起来。
说白了,不一定是 VS Code “有问题”,更像是默认配置在大项目场景下不够克制。
处理方法
处理思路也很直接:把那些没必要被反复扫描、反复监听的目录排除掉。
先用快捷键打开 VS Code 命令面板:
⌘ + Shift + P
然后输入 settings json,进入用户配置文件。

把下面这段配置加进去:
"search.followSymlinks": false,
"files.exclude": {
"**/.git": true,
"**/.svn": true,
"**/.hg": true,
"**/CVS": true,
"**/.DS_Store": true,
"**/tmp": true,
"**/node_modules": true,
"**/bower_components": true,
"**/dist": true
},
"files.watcherExclude": {
"**/.git/objects/**": true,
"**/.git/subtree-cache/**": true,
"**/node_modules/**": true,
"**/tmp/**": true,
"**/bower_components/**": true,
"**/dist/**": true
}
配置完成后,大致是这样:

改完之后
VS Code 重启之后,后台相关进程明显收敛了不少,风扇也没有之前那么容易突然起飞。 至少从目前的使用感受来看,这个问题基本是压下来了。
当然,这类问题未必只靠一组配置就能彻底根治。 如果你的项目本身体量很大,或者工作区里同时打开了太多仓库,CPU 占用还是有可能上来。 但把搜索范围和文件监听范围先收紧,通常是最省事、也最有效的一步。
最后
很多时候,Mac 发热、风扇异常、偶发卡顿,并不一定是机器性能不够, 而是某个后台工具正在默默地做“本不该做那么多”的事。
这次的 Code Helper 高占用,算是一个很典型的小坑。
记录下来,后面自己再遇到,也不用重新折腾一遍了。