Visual studio code 为什么VS代码需要这么多内存?如何使其运行更高效?

Visual studio code 为什么VS代码需要这么多内存?如何使其运行更高效?,visual-studio-code,ram,Visual Studio Code,Ram,有人知道如何使VS代码使用更少的内存吗 打开8个文件需要超过2gb,有时甚至超过3 GB 我是VS代码团队的成员 内存使用率高的原因有很多。我们已经整合了一些工具,可以帮助您调查潜在的性能问题 首先使用。process explorer显示VS代码的每个子进程的cpu和内存使用情况。使用openprocessexplorer命令打开它。process explorer应该帮助您跟踪哪些进程使用的内存最多。通常情况下,扩展将成为根本原因 此外,尽管您只打开了八个文件,但您的工作区似乎比这八个文件

有人知道如何使VS代码使用更少的内存吗

打开8个文件需要超过2gb,有时甚至超过3 GB


我是VS代码团队的成员

内存使用率高的原因有很多。我们已经整合了一些工具,可以帮助您调查潜在的性能问题

首先使用。process explorer显示VS代码的每个子进程的cpu和内存使用情况。使用
openprocessexplorer
命令打开它。process explorer应该帮助您跟踪哪些进程使用的内存最多。通常情况下,扩展将成为根本原因

此外,尽管您只打开了八个文件,但您的工作区似乎比这八个文件大很多。提供intellisense和其他高级编辑器功能通常也需要处理许多未打开的文件。如果不了解您正在使用的扩展以及您的工作区包含的内容,很难说2-3gb是否合理


我建议您也看看我们的其他部分。它解释了如何报告性能问题并进一步调查性能问题。

通过将此项添加到json设置文件中,可以防止vscode监视项目中包含大量文件的文件夹

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

因为VSCode是建立在Electron之上的,所以在引擎盖下它与web浏览器完全相同。
如果您需要更轻的内存,请使用Sublime文本或记事本+,因为VS代码不是Vim、Emacs甚至Sublime这样的本机程序。打开VS代码就像打开另一个Chrome窗口,它使用了大量的RAM和CPU


Neovim使用大约10 MB的RAM(带有一些插件),而vs代码使用700 MB的RAM,没有打开任何文件

我用过指南

了解为什么VS代码是

  • 启动速度非常慢
  • 占用大量内存(3-4 gb)
您可以创建CPU配置文件,并在问题中与扩展作者或我们共享。要创建CPU配置文件,请执行以下操作:

  • 关闭VSCode的所有实例,并从
    code--inspect extensions=9993
    或任何其他端口号开始
  • 执行
    Developer:Show Running Extensions
    命令。此命令打开一个包含所有正在运行的扩展名的编辑器。开始录制配置文件
我发现一些扩展具有高延迟,它们被标记为
无响应
黄色三角形。我使用右键单击上下文菜单禁用了它们,重新启动了VS代码,然后它就启动了

  • 启动只需几秒钟
  • 只需要约250mb的内存


不是一个实际的解决方案,但是通过
代码启动VSC。/--禁用扩展可以做到这一点,而无需手动禁用所有扩展。

@jessehowing该信息是错误的,没有帮助。VS代码和Atom是独立的编辑器,它们都构建在Electron框架上。电子和沙盒都不需要高记忆usage@mattbierner,谢谢你,这是我的理解。嗯,这是一个建立在网络浏览器之上的编辑器。正是由于一些绝对聪明的头脑,它才得以存在。但是,您必须有一些模块或扩展变得疯狂。例如,屏幕截图显示Intelephense正在索引,只需几秒钟(不知道编辑器运行了多长时间)!它的响应速度非常快……@Adriel您安装VSC需要多少空间?是的@MattBierner,谢谢您的回复。我试着禁用一些扩展名并关闭我在工作区中打开的一些文件,但即使内存使用率仍然很高。。。我将尝试遵循您在这里跟踪的一些指导原则,稍后我将给出反馈……嗨。我的实例也消耗了大量内存。最重要的是“gpu进程”(接近500-550MB),然而,我使用它来开发角度应用程序。gpu进程占用这么多内存,可以吗?我的屏幕分辨率是2736x1824。@mattbierner链接的“性能指南”根本不涉及内存。它似乎假设所有VSCode性能问题都是CPU问题。嗨@Matt,我只是好奇为什么MS选择JS来开发vs code?@SyedSouban看起来微软讨厌进行POSIX系统调用,他们喜欢使用Windows SDK。所以他们没有为Linux制作Visual Studio。没错,web不是为桌面应用程序开发而制作的。有人能解释为什么会出现这种情况吗?难道Electron不使用Chromium和Node.js进行打包吗?@FinnShadow您能否引用一些源代码或基准测试,以确保最新版本的Electron应用程序与本机应用程序的性能相同?记事本++使用12MB,在我的计算机上打开了20个文件,而Visual Studio代码使用120MB,打开了4个文件,安装了3个扩展名。@FinnShadow Electron肯定会增加大约10或100 MB,这种情况发生在Slack应用程序或vs代码中。对于一些人来说,额外的内存消耗并不多(这在我的32千兆开发机器上并不重要),但对于其他人来说,它可能变得至关重要(例如在2千兆平板电脑上)。是的,对于那些使用笔记本电脑作为编程驱动程序的人来说,这也会对电池产生不良影响。这根本不会造成问题,相反,您安装的扩展可能会造成不良影响。我发现这两个条目在默认情况下已经添加。然而,我使用的一些扩展遇到了一个问题,它可能会导入这些设置并扫描整个项目,并造成不良影响。我的vscode在一个有很多go包和内核src文件夹的工作区中使用2.5G。添加此配置后,使用的ram减少到300 MB。谢谢