优先检查 Activation Time 和 Runtime Impact,超300ms需优化;用 Developer: Show Running Extensions 查实时耗时,code --status 看启动总耗时与扩展激活时间,Developer: Toggle Developer Tools 分析长任务,Developer: Open Process Explorer 监控进程资源占用。

直接看 Activation Time 和 Runtime Impact,别等卡了再查——这两个值超过 300ms 就该动手了。
Developer: Show Running Extensions 查实时激活耗时
这是 VSCode 自带的诊断入口,不装插件、不改配置,按 Ctrl+Shift+P(Windows/Linux)或 Cmd+Shift+P(macOS),输入并执行 Developer: Show Running Extensions 即可打开。
重点关注三列:
-
Activation Time:插件响应触发条件(比如打开.ts文件)所花的时间;>300ms就会明显拖慢操作,>500ms基本就是冷启动卡顿元凶 -
Load Time:只是把代码读进内存,快慢影响小,别优先盯它 -
Runtime Impact:反映当前对主线程的实际干扰程度,持续跳动 >10% CPU 或内存缓慢上涨,说明它正在后台干活
注意:Not activated 的插件不用管;Activated 但 Runtime Impact 很低,大概率只是注册了监听器,还没真执行逻辑。
code --status 输出里盯紧 activationTime 和 extensionHost 总耗时
关掉所有窗口,在终端运行 code --status(macOS 稳定版有时不准,可用 code-insiders --status 替代),它会输出启动阶段各环节耗时。
关键字段:
-
Startup:从进程启动到界面可交互的总时间,超过 2s 就值得深挖 -
activationTime列:每个扩展的激活耗时,-1表示尚未激活(懒加载),不能排除;>300且isActivated: true才是真问题 - 末尾的
extensionHost启动总耗时:如果 >800ms,说明多个插件叠加拖慢了主线程
容易踩的坑:code --status 必须在“完全启动后立刻执行”,等几秒再跑,数据就失真了。
Developer: Toggle Developer Tools 看 Extension Host 长任务
有些插件激活快,但每次打字、保存都卡一下,这种得看主线程是否被阻塞。执行 Developer: Toggle Developer Tools,切到 Performance 标签页,点录制(●),做几次典型操作(比如快速输入、切换标签),停掉后看火焰图。
重点找:
- 标为
Extension Host的长任务块,单次 >16ms 就会导致掉帧(人眼可感知卡顿) - 常见模式:
onDidChangeTextDocument回调里做了同步正则替换、大数组遍历、没加await的fs.readFileSync - 大量
vscode-fileWatcher或vscode-scm长任务,往往不是 Git 插件本身的问题,而是它监听的目录里有node_modules或构建产物
别只看“总耗时”,要看单次调用是否稳定压在 16ms 以下。
Developer: Open Process Explorer 定位高占用扩展进程
这个命令能直观看到每个插件的实时 CPU 和内存占用。执行 Developer: Open Process Explorer,展开 Extension Host 下的子项,比如 esbenp.prettier-vscode 或 ms-python.python。
判断依据:
- CPU 长期 >10%,或内存持续缓慢上涨 → 很可能有内存泄漏或轮询未节制
- 右键可直接禁用,但注意:必须重启 VSCode 才能释放旧进程内存,仅重载窗口无效
- 别只看静态值,连续观察 10–20 秒——有些插件只在保存/格式化时爆发式占用
Linux/macOS 用户若发现 code 进程下有多个 --type=extensionHost 子进程,可用 ps aux --forest | grep vscode 查 PID,再通过 cat /proc/[pid]/cmdline 看路径末尾的扩展 ID。
真正难处理的不是耗时高的插件,而是那些 Activation Time 合理、Runtime Impact 波动小,却在特定场景(比如打开某个文件类型、触发某次补全)突然卡住主线程的插件——它们往往藏在 Performance 面板的长任务堆栈深处,需要你复现动作后立刻抓取火焰图。



















