gpt4 book ai didi

c# - "Out of Virtual Memory"崩溃

转载 作者:行者123 更新时间:2023-11-30 13:20:26 25 4
gpt4 key购买 nike

我正在维护一个现有的应用程序,但在某些情况下(很容易重现)运行时我遇到了一个错误,应用程序失败并显示消息:

  • 标题:“Windows - 虚拟内存不足”
  • 内容:“Windows 的虚拟内存不足...”

问题是:我需要先检查什么?此消息何时发生?为什么?

在C#中这个虚拟内存中存储了什么,为什么内存不足?

最佳答案

这听起来像是某种内存或资源泄漏。是时候打开分析器看看是什么在消耗资源或内存了。

好的分析器包括

http://www.red-gate.com/products/dotnet-development/ants-performance-profiler

http://memprofiler.com/

-- 这将附加到您正在运行的进程并查看什么是失控的。

一般来说,这种问题可能是由于实现了 IDisposable 的对象没有通过调用 Dispose() 来处理。这些对象使用的内存和资源不由 .NET 垃圾收集器管理,因此(与常规 .NET 对象不同)它们不会被系统自动清理。

分析器通常会告诉您这是否是一个问题。

还有其他情况可能会发生这种情况,例如

  • 分配非常大的内存块,例如40Gb 阵列
  • 没有机会正确收集垃圾的负载非常重的系统可能会超出其虚拟内存分配。

同样,分析器会告诉您问题可能出在哪里。

关于c# - "Out of Virtual Memory"崩溃,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8122150/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com