大物件堆壓縮
預設情況下,大型物件堆不會像經典的物件堆那樣被壓縮,這可能導致記憶體碎片, 並且可能導致 OutOfMemoryException
s
從 .NET 4.5.1 開始,有一個選項可以顯式壓縮 Large Object Heap(以及垃圾收集):
GCSettings.LargeObjectHeapCompactionMode = GCLargeObjectHeapCompactionMode.CompactOnce;
GC.Collect();
正如任何顯式的垃圾收集請求(它被稱為請求,因為 CLR 不被強制執行它)一樣小心使用並且預設情況下避免使用它,因為它可以去除校準 GC
s 統計資料,從而降低其效能。