.NET 中的 OutOfMemoryException:64 位计算机上的内存使用量超过 1.3GB
尽管在 64 位计算机上安装了 16GB RAM ,应用程序在消耗大约 1.3GB 的内存后遇到 OutOfMemory 异常 记忆。尽管没有任何大小超过 2GB 的单个对象,此问题仍然存在。
原因在于编译目标架构。默认情况下,.NET 应用程序是针对 32 位体系结构进行编译的,这对每个对象的内存使用施加 2GB 的限制。即使在 64 位机器上,编译 32 位也会在相同程度上限制内存使用。
解决方案:
要解决此问题,请重新编译应用程序目标64 位架构。这将允许应用程序充分利用系统上可用的 16GB RAM。重新编译后,二进制文件将专门在 64 位机器上运行。
此外,需要注意的是,如果 CLR 中的单个集合(例如 List
以上是尽管有 16GB RAM,为什么我的 64 位 .NET 应用程序仍会抛出 OutOfMemoryException?的详细内容。更多信息请关注PHP中文网其他相关文章!