使用大量 CPU 的 Visual Studio 代码

问题描述 投票:0回答:9

我正在运行 Windows 10。即使在空闲时,VSCode 也始终占用我 26-30% 的 cpu。我在 CMD 中尝试了

code --disable-extensions
来检查扩展是否导致了问题,但我的表现与扩展相同。

当我使用 sublime text 时,我遇到了类似的问题,编辑器在空闲时使用大量 cpu - 问题在于索引,可以通过设置中的一行代码将其关闭。我尝试在 VSCode 上查找索引,但找不到与我的问题相关的任何内容。可能是什么问题?

visual-studio-code cpu-usage
9个回答
20
投票

对我来说,解决方案是禁用扩展自动更新和搜索引擎的一些额外设置。最有效率的是

search.followSymlinks": false
。 我分享我的 settings.json 文件。

"files.exclude": {
        "**/tmp/**": true,
        "**/node_modules/**": true,
        "**/.git/objects/**": true,
},
"files.watcherExclude": {
        "**/.git/objects/**": true,
        "**/.git/subtree-cache/**": true,
        "**/node_modules/**": true,
        "**/tmp/**": true,
        "**/dist/**": true
},
"search.exclude": {
        "**/node_modules/**": true,
        "**/dist/**": true,
        "**/tmp/**": true,
        "**/.git/objects/**": true,
        "**/.git/subtree-cache/**": true
},
"extensions.autoCheckUpdates": false,
"extensions.autoUpdate": false,
"search.followSymlinks": false

7
投票

VS 代码使用文件观察器来识别文件中的任何更改。您可以排除包含多个文件的文件夹,并且不需要连续观看。

"files.watcherExclude": {
    "**/.git/objects/**": true,
    "**/node_modules/**": true
}

2
投票

对我来说,解决问题的方法是关闭

Auto Import
扩展,当时我正在做一个巨大的项目,只有当我打开那个项目时,VS Code 才开始占用我的 CPU,在左下角它说
Scanning...
我是对的单击它,出现“管理扩展程序”我单击它并立即转到
Auto Import
扩展程序,我将其关闭,一切恢复正常。因此,请尝试检查左下角的某些进程并尝试禁用这些进程并希望它有效,或者至少对你们中的一些人有效。

[编辑] 你还可以做的是打开任务管理器,你会看到类似

\> Visual Studio Code (8)
我会单击箭头以查看所有 VS Code 进程的列表,并仅杀死那些(在我的例子中只有一个)造成所有问题的进程


1
投票

每次我打开 xml 文件时,CPU 都会为 Electron 使用 100%。当我打开多个项目时,我的 mac 会出现几个 CPU 100% 的 Electron 进程。

这个配置帮我解决了

设置.json

"files.exclude": {
    "*.xml": true
}

想法的来源来自:https://vscode-docs.readthedocs.io/en/latest/supporting/faq/

Electron 的 CPU 现在是 0.1% :)

希望它能帮助有同样问题的人。


1
投票

对于 2023 年来到这里的人们,这就是我解决问题的方法。

注意: 我的目标是知道什么消耗 100% CPU(扩展或 vscode 服务器)。

  1. 卸载/禁用所有扩展。
  2. 在远程 Linux 服务器上重启 VS Code 服务器。您可以在 VS Code 中按 CTRL + SHIFT + P 并键入或选择“Remote-SSH:kill VS Code Server on Host ...”。然后选择主机名并尝试再次连接到主机。
  3. 如果 CPU 仍处于 100%,请检查
    htop
    并查看哪个 vs 代码服务器进程正在执行此操作。在我的例子中,它是“pylance”扩展。使用
    kill PID
    停止它。你的 CPU 水平现在应该急剧下降。
  4. 重新安装你需要的扩展。

0
投票

我的 Visual Studio Code CPU 使用率在启动期间很高,但在一分钟内下降。计算机在那一分钟无法使用 - 鼠标和键盘没有响应,风扇全开。

Microsoft Live Share 扩展似乎是我的罪魁祸首。我在 Windows 10 上使用中等大小的存储库上的实时共享扩展。

重现步骤:

  1. 在 VSCode 中打开存储库文件夹
  2. 安装 Live Share 扩展
  3. 关闭 VSCode
  4. 重新打开 VSCode
  5. 观察 100% CPU 和不可用的鼠标/键盘大约 10 到 60 秒
  6. 禁用扩展
  7. 关闭 VSCode
  8. 重新打开 VSCode
  9. 观察到 CPU 没有异常高

希望这可以帮助人们避免同样的挫败感。


0
投票

除了 visual studio 内部配置之外,您还可以修改操作系统的配置。

注意不要让你的日程安排混乱,你必须在“尝试”之前知道你在做什么。

在 linux 上,您可以调整每个进程的 NICE 值,例如。 Windows 上的等效项在以下文章中进行了描述:https://www.itechtics.com/limit-cpu-usage/。如果您不自信,请进行一些研究。


0
投票

我有同样的情况。我删除了大量不需要的扩展。现在 VS 代码不使用那么多 CPU。


0
投票

这不是解决方案,而是解决方法:

如果出于任何原因 vscode 继续在 linux 中使用高 cpu,请使用 linux 的 cgroups 功能来控制 cpu 使用量:

1- apt-get 安装 cgroup-tools

2- 创建 /etc/cgconfig.conf 并添加这些行:

group lowcpu {
   cpu {
      cpu.shares=100;
   }
}

3- 创建 /etc/cgrules.conf 并添加这些行:

*:vscode cpu lowcpu
*:code cpu lowcpu

4-运行两个命令:

cgconfigparser -l /etc/cgconfig.conf
cgrulesengd

参考: https://gist.github.com/avoidik/1c7c53f02461f716aabebf3372a6199d

© www.soinside.com 2019 - 2024. All rights reserved.