【问题标题】:How Do I Fix Visual Studio 2022 Out of Memory Issue? [closed]如何修复 Visual Studio 2022 内存不足问题? [关闭]
【发布时间】:2022-01-04 20:55:42
【问题描述】:

我检查了我在 Stack 和 Docs 上都可以找到的所有可能的配置选项,以禁用在运行我的 C# Blazor 服务器端应用程序的 Visual Studio 2022 中远程无关的任何内容。这主要意味着禁用任务栏中的代码等内容并启用“仅我的代码”选项 - 主要是文本编辑器和调试工具选项。

当我启动项目时,任务管理器中的总体内存负载达到了 ~1.5GB,然后我收到了内存不足错误,尽管没有其他任何东西在运行并且有 64GB 的 RAM。我知道这是由于 64 位应用程序固有的内存限制,但我认为 VS 2022 现在是 64 位,因此限制应该是 4GB 而不是 2GB。我确实指定了一个 64 位处理器,仅用于调试目的。

我在 Windows 11 上运行,但我无法让 editbin.exe 构建后事件工作 - 我尝试了多个示例,但均无济于事。显然,鉴于这是 C#,我没有链接器选项。

有人知道如何解决这个问题吗?

【问题讨论】:

  • 这不是一个特定的编程问题,也没有重现的步骤。最好的办法是向 Microsoft 开票。
  • 新建一个BSS项目,只是基本的计数器/天气示例,什么都不做,不添加代码,直接按播放。它会出错吗?如果是这样,则说明您的安装存在问题。如果不是,那么您的其他项目存在问题(并且由于您没有提供任何重现,我们无法真正提供帮助)
  • 一切运行都没有问题——我的所有其他项目都运行良好——直到我真正添加了一个 Int32 计数器。

标签: c# visual-studio memory blazor blazor-server-side


【解决方案1】:

当我启动项目时,整体内存负载命中

在我看来,不是 Visual Studio 内存不足,而是您的项目。
您可以在右侧的诊断工具中看到这一点。这些显示项目的当前资源使用情况。这些与 Visual Studio 是分开的:

尽管 Visual Studio 以 64 位编译,但应用程序默认编译为 32 位。您可以通过以下方式更改:

  1. 在顶部的下拉Any CPU 中,点击下拉菜单。任何 CPU 表示 x86(32 位)和 x64(64 位); x64 处理器也可以运行 x86(32 位)程序:

  2. 从下拉列表中打开Configuration Manager

  3. 选择下拉列表platform。选择Create New...

  4. 选择x64并按OK

  5. 您的配置管理器现在可能看起来像这样(可能需要单独应用活动解决方案平台):

  6. 您现在可以在顶部选择 32 位和 64 位:

但是,这很可能是代码优化问题,而不是内存太少的问题。但是对于您的项目试图归档的内容,没有足够的信息

编辑:

我正在使用诊断视图并查看内存,我终于找到了问题 - 但不知道如何解决它

您可以查看 Visual Studios Performance Profiling。 youtube上有很好的教程。有性能分析器和内存分析器。
性能分析器将准确地显示您的处理器将处理时间花在哪里,而内存分析器将准确地显示内存被消耗的位置:

youtube 上有很好的教程。当您能够找到问题时,请随时 PN 我或发布一些内容。有关您要达到的目标、问题所在以及您的代码所需的详细信息。

出乎意料,我猜你要么有一个循环填充列表,要么你正在尝试处理大量信息。

【讨论】:

  • 谢谢 - 我正在使用诊断视图并查看内存,我终于找到了问题 - 但不知道如何解决它。我将您的回复标记为答案,因为这正是解决问题的方法!
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-12-23
  • 2022-01-09
  • 2022-06-22
  • 2022-01-09
  • 2021-12-28
相关资源
最近更新 更多