-1

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

当在调试期间在 VS2010 中发生这种情况时,所有其他运行的 .NET 东西也会失败,但 VS2010 本身不会。然而,因为我不明白如何“回收”CLR,我最终在我的工作站上重新启动。

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

谢谢。

4

1 回答 1

0

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

于 2012-08-15T02:56:37.503 回答