VSCode内存占用主因是Windows后台更新服务和扩展自动更新。安装时须取消勾选“Enable Windows Background Updates”,已安装则需禁用计划任务、清理注册表;macOS需升级后立即chmod 444锁定product.json;Linux应弃用Snap/Flatpak改用官网tar.gz包。

VSCode 自动更新本身不直接吃内存,但后台更新服务(尤其是 Windows)和扩展自动更新会持续拉起进程、扫描网络、写临时文件——这才是资源消耗的真正源头。
禁用 Windows 后台更新服务(安装时必须操作)
这个服务一旦装上就很难彻底清除,update.mode 设为 "none" 完全无效。
- 安装 VSCode 时,在
Custom Setup页面务必取消勾选Enable Windows Background Updates - 若已安装并勾选:必须进
taskschd.msc禁用所有含VSCode或update的计划任务 - 还要手动清理注册表路径
HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run下值为Code.exe --no-sandbox --processStart "update.exe"的条目
关闭扩展自动更新(settings.json 配置)
扩展更新检查会定期连接 Marketplace,触发网络请求、解析响应、比对版本,长期驻留后台线程。
- 在用户设置或工作区
settings.json中添加:{<br> "extensions.autoUpdate": false,<br> "extensions.ignoreRecommendations": true<br>} - 注意:
extensions.autoUpdate关的是「下载并安装」,不是「检查」;但关掉后 VSCode 会跳过整个检查流程,省下 CPU 和网络唤醒 - 某些插件(如 Copilot)有独立更新逻辑,需额外查看其设置项,例如
github.copilot.updateMode
macOS 上防 product.json 被覆盖(升级后立即重置)
每次双击 dmg 安装新版 VSCode,都会覆盖 Contents/Resources/app/product.json,把你手动加的 "updateMode": "none" 清空。
- 升级后立刻执行:
chmod 444 /Applications/Visual\ Studio\ Code.app/Contents/Resources/app/product.json - 这样系统无法写入,
updateMode设置就真正生效了 - 如果未来需要升级配置,先
chmod 644解锁再改
Linux 用户绕开 Snap/Flatpak 更新绑架
Snap 和 Flatpak 版本完全无视 update.mode 或 product.json 修改,它们由系统包管理器强制控制更新节奏。
- 直接卸载 Snap 版:
sudo snap remove code,改用官网.tar.gz包解压运行 - Flatpak 用户可临时压制:
flatpak override --user --env=UPDATE_DISABLED=1 com.visualstudio.code,但不保证兼容性 - 真正可靠的做法:只用
./code启动,更新行为完全由你控制,无后台服务、无计划任务、无静默下载
最易被忽略的是:Windows 后台更新服务和 macOS 的 product.json 覆盖问题——它们不是配置能关掉的,而是安装或升级动作本身触发的底层机制。没在这两个环节卡住,其他设置都只是打补丁。


















