VSCode怎么排查导致卡死的启动项

胖涛大大_6030

胖涛大大_6030

2026-11-16

549人浏览

原创

卡死在“正在加载扩展”或启动瞬间无响应,基本是某个扩展的activate()函数阻塞主线程;用code --status查看Extensions耗时,配合Developer: Start Extension Bisect二分定位,3–4轮即可锁定问题插件。

vscode怎么排查导致卡死的启动项

卡死在“正在加载扩展”或启动瞬间无响应,基本就是某个扩展的 activate() 函数阻塞了主线程——不是所有扩展都“重”,但只要一个用了同步 fs 操作、没设超时的网络请求,或递归监听了 node_modules,整个 UI 就会挂住。

怎么看哪个扩展在拖后腿

别猜,直接看 VSCode 自己报的账:code --status 是最准的启动诊断命令。它不渲染界面,只输出关键耗时数据。

  • 重点盯 Extensions 区域:有没有扩展显示 activated 状态且耗时 >200ms?尤其是 ms-vscode.js-debug、gitlens、esbenp.prettier-vscode 这类声明了 "activationEvents": ["*"] 的
  • 如果终端卡在输出一半、或者最后几行出现 ERR! spawn ENOENT 或 Extension host terminated unexpectedly,说明某个扩展启动失败并拖垮了整个 Extension Host 进程
  • 配合 Developer: Startup Performance(Cmd+Shift+P 输入)可看到更细粒度的子阶段耗时,比如 “Activating extension ms-python.python” 卡在 “Running activation script” 超过 1.5s,基本就是它

怎么快速隔离问题扩展

手动一个个禁用太慢,VSCode 提供了二分法工具,3–4 轮就能定位。

VSCode
VSCode

避免常见的 VSCode 错误——设置冲突、调试器配置和扩展冲突。

下载
  • 先运行 code --disable-extensions:能正常启动,就确认是扩展问题
  • 接着按 Cmd+Shift+P / Ctrl+Shift+P,输入 Developer: Start Extension Bisect,它会自动启用一半扩展 → 你测试是否卡死 → 它再切另一半,反复直到锁定唯一嫌疑插件
  • 常见高危组合包括:ESLint + Prettier 同时设为默认格式器、GitLens 在大型仓库中开启缓存、Remote-SSH 远端环境权限异常或 Node 版本不兼容

为什么改了 settings.json 还不生效

VSCode 的配置分层很关键:用户级设置不覆盖项目级行为,而且很多扩展初始化逻辑只在**首次加载工作区时执行一次**,改完不重启等于白改。

  • 必须把优化项写进项目根目录的 .vscode/settings.json,而不是用户 settings.json;例如排除监听:"files.watcherExclude": {"**/node_modules/**": true, "**/dist/**": true}
  • 禁用扩展要右键 → Disable (Workspace),不是仅禁用当前窗口;否则下次打开别的文件夹,它又自动激活
  • 改完配置后,**必须完全退出 VSCode(macOS 查活动监视器,Windows 查任务管理器里所有 Code.exe),再重新打开整个窗口**——热重载对扩展激活逻辑无效

容易被忽略的三个底层陷阱

排查到扩展层面还不够,有些卡死根本不在 UI 层,而是发生在 Node 子进程或系统调用环节。

  • node_modules 下存在软链接循环(比如 a -> ../b,b -> ../a),会导致 fs.realpathSync() 死循环,表现为 node --version 卡住、npm run 无响应——这不是 VSCode 的错,但你会在调试时误判
  • Linux/macOS 用户的 inotify 句柄数不够(/proc/sys/fs/inotify/max_user_watches 默认常为 8192),而 VSCode 监听整个工作区时会快速耗尽,结果就是 CPU 拉满、保存延迟、Git 状态不更新
  • Remote-SSH 连接卡在“输入密码”却无报错,大概率是远端残留的 code-server 进程僵死,不是网络或密钥问题;需 SSH 登上去杀掉所有 node 和 code 进程再重连

相关文章

PHP速学视频免费教程(入门到精通)
PHP速学视频免费教程(入门到精通)

PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!

下载

相关标签:

vscode启动问题 vscode

本站声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

相关专题

更多
vscode是什么_vscode怎么安装配置
vscode是什么_vscode怎么安装配置

VS Code(Visual Studio Code)是一款免费、开源的跨平台代码编辑器,由微软开发和维护。它被广泛用于软件开发和编程,支持多种编程语言和框架。VS Code 同时提供了丰富的功能和扩展性,使开发者可以高效地编写、编辑和调试代码。

2023.06.30

1635

18

vscode怎么运行代码
vscode怎么运行代码

vscode是一个运行于MacOS X、Windows和Linux之上的,针对于编写现代Web和云应用的跨平台源代码编辑器;vscode免费而且功能强大,对JavaScript和NodeJS的支持非常好,自带很多功能,例如代码格式化,代码智能提示补全、Emmet插件等。php中文网给大家带来了相关的教程以及文章,欢迎大家前来阅读学习。

2023.07.21

3572

3

vscode使用的框架介绍
vscode使用的框架介绍

VSCode是一款跨平台代码编辑器,它基于Electron框架和Monaco Editor构建。想了解更多vscode的相关内容,可以阅读本专题下面的文章。

2024.03.14

2169

12

vscode一般用来写什么语言
vscode一般用来写什么语言

VSCode是一款功能强大的代码编辑器,支持多种编程语言和文件格式。它内置对 JavaScript、Python、Java、C++、TypeScript、HTML/CSS、Go 等语言的支持。想了解更多vscode的相关内容,可以阅读本专题下面的文章。

2024.03.14

1767

8

vscode可以写什么语言
vscode可以写什么语言

vscode是一款强大的代码编辑器,支持多种编程语言的开发。通过安装扩展,可以为 JavaScript/TypeScript、Python、Java、C#、PHP、Go、Ruby、Rust、HTML/CSS 等语言提供智能代码补全、调试和格式化等功能。想了解更多vscode的相关内容,可以阅读本专题下面的文章。

2024.03.15

2647

12

vscode中文设置方法
vscode中文设置方法

方法一:在设置页面中,搜索“locale”,并选择“zh-cn”。方法二:按“Ctrl Shift P”快捷键,输入“Configure Display Language”,将语言修改为“zh-cn”。如果上述方法无效,可考虑安装中文插件。想了解更多vscode的相关内容,可以阅读本专题下面的文章。

2024.03.15

1878

14

vscode用途介绍
vscode用途介绍

Visual Studio Code(VSCode)是一款由 Microsoft 开发的多功能文本编辑器,适用于各种编程语言。作为一款开源软件,VSCode 拥有代码高亮、自动补全、调试、Git 集成等强大功能,成为程序员不可或缺的工具。想了解更多vscode的相关内容,可以阅读本专题下面的文章。

2024.03.15

1302

10

vscode和visualstudio的区别
vscode和visualstudio的区别

Visual Studio是一款功能强大的集成开发环境(IDE),适用于专业开发人员进行复杂项目的构建。而VSCode则是一款轻量级的代码编辑器,更适合各种规模的项目开发。想了解更多vscode的相关内容,可以阅读本专题下面的文章。

2024.03.15

1156

8

vscode设置中文界面不生效解决方法
vscode设置中文界面不生效解决方法

vscode设置中文界面不生效解决方法:安装中文语言包、通过命令面板设置语言、检查 locale.json 设置、重新安装中文语言包、检查 VSCode 版本和更新、排除插件冲突、检查系统语言设置、查看 VSCode 日志和错误消息、重置 VSCode 设置、查看官方文档和社区支持。想了解更多vscode的相关内容,可以阅读本专题下面的文章。

2024.03.15

594

5

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程