Visual Studio 2022 高度使用内存。

44
我正在使用Visual Studio 2022和blazor .net 6进行编程。在持续工作1小时后,Visual Studio的内存消耗非常高,并且在我的PC(Windows Server 2019)上崩溃了。

Task manager with visual studio 2022


2
这个与普通的asp.net core api项目没有问题。 - sajjadarash
https://dev59.com/HMPra4cB1Zd3GeqPbz4N - Steve Greene
2
你的应用程序“Psyco.Time2Work.UserInterface”正在使用3.3 GB的内存。你应该修复内存泄漏问题。(当你从Visual Studio运行应用程序时,它们会作为VS的子进程生成,这可能会让你感到困惑) - Kirk Woll
请提供足够的代码,以便他人更好地理解或重现问题。 - Community
已使用20 Gb RAM,总量相同~83%,因此几乎全部分配给了无用的任务(比一个月前工作缓慢)。 - Kamerton
3
在这个页面和其他在线资源中尝试了几天所有的建议后,至少对我来说没有任何实质性的结果。即使我已经为我的电脑添加了更多的RAM,但是我添加的RAM越多,VS 2022消耗的就越多。最终,我找到了一个非常棒的解决方案:回滚到Visual Studio 2019,现在一切都很好。 - znn
5个回答

31

在此输入图片描述

我的同事发现了内存泄漏问题。

如果您禁用这两个复选框,您的问题将得到解决。

工具 -> 选项 -> 文本编辑器 -> 高级选项

禁用以下内容:

  • 启用拉取诊断(实验性功能,需要重新启动)

  • 启用 Razor 拉取诊断(实验性功能,需要重新启动)


我本以为这会起作用,但事实并非如此。VS在调试或发布我的Blazor项目时占用了20GB的内存。 - Enkode
8
对我来说,禁用“在单独的进程中运行代码分析”就起到了作用。我设法将内存使用量从10GB降至2.5GB。禁用上述提到的“pull”选项可以再减少0.5GB,使内存占用量约为2GB。 - koxy
2
我能够通过以下方法将10GB的使用量减少到1GB(减少9GB)。
  1. 采用Hoàng Gia Huy的建议(符号),
  2. 禁用“在单独的进程中运行代码分析”
  3. 禁用“pull”选项。
- Vishal Kottarathil
这对我也解决了问题。差别显著且明显。(我没有进行“符号”更改) - Niels Brinch
1
@Ahmad 去工具 -> 选项 -> 文本编辑器 -> C# -> 高级 - Sora
显示剩余3条评论

14

我在设置选项为仅指定模块时,将98%的RAM修复为50%

解决方案1:

要指定符号加载,请打开Visual Studio,选择工具>选项>调试>符号>仅加载指定的模块。 enter image description here


解决方案2:

打开任务管理器(Ctrl+Shift+ESC)-> ServiceHub.Roslyn... ->右键->结束任务。

enter image description here


0

当自动文档恢复导致解决方案加载变慢时,Visual Studio 会在黄色栏中通知您。您可以按照以下步骤禁用自动文件重新打开:

选择“工具”>“选项”以打开“选项”对话框。

在“项目和解决方案”>“常规”页面上,取消选中“在解决方案加载时重新打开文档”。

如果您禁用了自动文件恢复,则可以使用以下任一“转到”命令快速导航到要打开的文件:

对于常规“转到”功能,请选择“编辑”>“转到”>“全部转到”,或按Ctrl+T。

使用“转到最后编辑位置”命令(编辑 > 转到 > 转到最后编辑位置,或按Ctrl+Shift+Backspace)跳转到解决方案中的最后编辑位置。

使用“转到最近文件”查看解决方案中最近访问的文件列表。选择“编辑”>“转到”>“转到最近文件”,或按Ctrl+1,Ctrl+R。

此问题已在下面的link中得到解决。


0
这些微软自己的指示也有助于释放内存并使VS加载和运行更快,但其中也包含一些过时的信息。很奇怪微软为什么不能及时更新自己的指示。我使用的是Microsoft Visual Studio Community 2022 (64-bit) - Current Version 17.6.1,而在这些提示中有一个部分在当前版本中不存在。

https://learn.microsoft.com/en-us/visualstudio/ide/visual-studio-performance-tips-and-tricks?view=vs-2022

我也使用了这个:工具 > 选项 > 调试 > 符号 > 仅加载指定的模块 + 上述的微软提示。


-12

11
这个问题还没有解决。我可以通过任务管理器观察到内存使用量稳步增加。 - Doug Kimzey
3
还没有确定 :( - TECNO
在17.3.0版本中,这个问题肯定没有被解决。在VS 2019中使用约400MB的解决方案,在2022年中使用900MB(没有解决方案的情况下,2022年的使用量约为600MB)。这是在禁用代码分析并仅指定符号调试模块的情况下。根据Mo D Genesis的评论禁用“pull”诊断,并根据koxy的评论取消选中“在单独的进程中运行代码分析”可以将使用量减少到1.2GB。 - Simon Storr
微软Visual Studio Professional 2022(64位)- LTSC 17.4 版本17.4.4:VS2017使用约500 MB RAM,VS2023使用约1.5 GB(vb.net .forms项目 .net RunTime 4.8)。随着项目迁移到.NET 7.0项目,情况变得更糟:使用约2-2.5 GB HS。 - FredyWenger
即使是2023年的17.5.5版本也存在这个问题。我有16GB的内存,但VS甚至可以消耗10GB,必须关闭并重新打开才能继续工作。 - Juan Pablo Gomez
这就是微软经常说的:/ - Zeyad

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接