最快配置为"python": "python -u -c \"import sys; exec(open(sys.argv[1]).read())\" --",可提速15%–25%,需禁用缓冲、跳过初始化、避免shell解析开销。

VSCode 本身不运行代码,所谓“运行慢”基本都卡在终端启动、脚本执行或调试器加载环节——改对三处配置,Python 执行可快 15%–25%,Node.js 调试首次启动延迟能从 5 秒压到 1 秒内。
code-runner.executorMap 配错命令,Python 每次多耗 300–500ms
默认 "python": "python" 会触发 shell 路径查找、模块缓存加载、__main__.py 导入流程,尤其在 Windows 上开销明显。真正快的写法要绕过 shell、禁用缓冲、直读源码执行:
-
python -u是必须加的:强制 stdout/stderr 不缓冲,避免print()输出延迟 - 别用
$pythonPath或cd $dir && python:前者多一次 shell 查找,后者引入 fork + 切目录开销 - 推荐命令:
python -u -c "import sys; exec(open(sys.argv[1]).read())" --,跳过导入机制,兼容 Python 3.7+ - 配置位置:工作区或用户级
settings.json中完整覆盖code-runner.executorMap键值对
files.watcherExclude 配不全,CPU 持续飙高导致保存/切换都卡
VSCode 默认监听整个工作区,一旦打开含 node_modules、venv、.git 的项目,Code Helper (Renderer) 进程 CPU 就容易 >70%,表现为打字卡、Git 状态刷新慢、自动补全失灵。
- 必须在工作区根目录的
.vscode/settings.json中配(用户级设置无效) - 最低要求:
"**/node_modules/**": true、"**/venv/**": true、"**/__pycache__/**": true、"**/.git/**": true - Python 项目建议追加:
"**/.mypy_cache/**": true;前端项目加:"**/dist/**": true、"**/build/**": true - 改完后务必关闭并重新打开该工作区——缓存不刷新,配置不生效
terminal.integrated.defaultProfile 和 python.terminal.launchArgs 拖慢终端启动
终端卡顿不是编辑器渲染问题,而是集成终端被错误配置或环境拖累。常见于 Windows 上设为 PowerShell,或 Python 项目中终端自动激活大型虚拟环境。
- 检查
terminal.integrated.defaultProfile.windows(或 macOS/Linux 对应项),避免设为PowerShell——改用Command Prompt或路径正确的Git Bash - 禁用终端自动激活虚拟环境:
python.terminal.launchArgs设为空数组,或关闭python.terminal.executeInFileDir - 若用 WSL2,别直接在
C:\下开终端跑npm run dev——改用Remote - WSL,在 Linux 环境下执行,I/O 延迟直降 70%+ - 终端卡住时
Ctrl+C无效?可能是子进程挂起,试试在设置里加"terminal.integrated.commandsToSkipShell": ["workbench.action.terminal.clear"]
调试器首次启动慢、断点卡住,根源常是同步扫描依赖
Python 和 Node.js 调试最典型:点击 Run → Start Debugging 后等 5 秒以上,或断点命中后 UI 冻结。这不是 VSCode 主线程卡死,而是调试器在初始化阶段做了过多同步操作。
- Python 用户:在
launch.json中加"skipFiles": ["<node_internals>/**"]</node_internals>,避免进入内置模块堆栈 - 禁用调试器自动附加(autoattach):
"debug.node.autoAttach": "disabled",防止后台进程误触发 - Node.js 用户:确保
npm缓存路径稳定(npm config get cache),避免挂载在 OneDrive/iCloud 下 - 大型 Python 项目:临时禁用
pylance,改用轻量jedi,或在settings.json中限制类型检查范围
最容易被忽略的是:终端和调试器的慢,90% 以上跟 node_modules 目录是否被正确排除无关——真正关键的是 shell 配置、执行命令写法、以及调试器是否在做全量依赖扫描。这些地方一动,响应就立刻不同。


















