内存不足后循环CLR?

时间:2012-08-15 02:15:58

标签: memory-management clr out-of-memory

使用非常大的内存中文件,可能会发生OutOfMemoryException。当生产中发生这种情况时,所有.NET应用程序都会崩溃,这必须是因为它们共享相同的CLR空间。因为我无法理解如何“回收”CLR,所以我最终重新启动了服务器。

在VS2010调试期间发生这种情况时,运行的所有其他.NET事件也会失败,但VS2010本身却没有。但是,因为我无法理解如何“回收”CLR,所以我最终在我的工作站上重新启动。

如何“回收”CLR内存空间?如何在运行为.NET Framework(非IIS)编写的Win32服务的服务器上进行回收?

感谢。

1 个答案:

答案 0 :(得分:0)

循环CLR需要退出并重新运行该过程。您可以调用GC.Collect强制GC优化当前使用的内存;但就其而言,某些东西需要记忆而不能只是“循环”它。