System.OutOfMemoryException错误

时间:2013-04-13 16:56:13

标签: c#-4.0 sql-server-2008-r2 crystal-reports-xi

我们正在开发一个富客户端应用程序,其中运行许多线程以及第三方控件,在运行应用程序1小时后,它开始给出'System.OutOfMemoryException'的错误,除非我们重启应用程序,我已搜索到许多网站寻求帮助,但没有特别明确的原因。

感谢。

2 个答案:

答案 0 :(得分:1)

这听起来很不言自明,你的系统没有足够的内存。如果您仍然以32位运行应用程序,那么转移到64位可能会解决问题。我最近在服务器-2008-r2上遇到了这个问题,而转向64位确实解决了我的问题。但是,如果你已经是64位,那么服务器可能没有足够的物理内存。在这种情况下,您需要添加更多内存,或者解决如何使应用程序减少内存耗尽的问题。可能存在可以丢弃的对象,它会保留对等的引用,如果是这种情况,您应该尝试进行分析以尝试识别占用最多内存的内容。除此之外,应用程序是否使用任何非托管DLL,例如用C ++或类似的东西编写的COM对象。也许在托管框架之外存在内存泄漏?

答案 1 :(得分:0)

我建议使用分析器来识别并找到高内存消耗的来源。