是否可以停止.NET垃圾回收?

Ale*_*lex 11 .net c# garbage-collection

程序员是否有可能以C#编程语言以编程方式启动/停止垃圾收集?例如,用于性能优化等.

Pau*_*sik 7

并不是的.您可以为GC通过类似方法提示GC.AddMemoryPressureGC.RemoveMemoryPressure但不是完全阻止它.

此外,垃圾收集不是一个过程密集.程序员很少担心它.


Pol*_*zer 7

同时有可能,GC班上有方法:

GC.TryStartNoGCRegion(...)GC.EndNoGCRegion().


小智 6

一般来说,没有。而且大多数人会认为担心垃圾回收是过早的优化,除非您进行一些性能分析,并发现这确实是应用程序性能不佳的原因。

如果您对微调GC的性能非常感兴趣(或者更可能是微调您的应用程序以相对于GC改进其性能),则MSDN上有相当不错的方法描述。