默认情况下,.NET框架用于压缩大对象堆的策略是什么?
什么成立?如果是“一段时间后”,是否有一些有关“多长时间”或“何时”的详细信息?
(我对高于4.5的.NET Framework版本感兴趣)
答案 0 :(得分:2)
默认情况下,完全不压缩LOH。因为那可能很昂贵。
从4.5.1开始,您可以使用GCSettings进行更改。选择为CompactOnce和Never。
因此,您可以manually trigger由应用程序逻辑驱动进行压缩。
仅在第二代收集期间收集(清除)LOH。这可能会导致您的“一段时间后”混乱。但是收集不是压缩。