Сжатие кучи больших объектов, когда это хорошо?

Во-первых, насколько большой считается большим? Есть ли способ определить, насколько большой объект находится в куче?

.Net 4.5.1 поставляется с этимLargeObjectHeapCompactionMode:

После того, как свойство LargeObjectHeapCompactionMode установлено в GCLargeObjectHeapCompactionMode.CompactOnce, следующая полная сборка мусора (и сжатие LOH) происходит в неопределенное время в будущем. Вы можете сразу сжать LOH, используя следующий код:

GCSettings.LargeObjectHeapCompactionMode = GCLargeObjectHeapCompactionMode.CompactOnce;
GC.Collect();      

Из того, что я слышал, плохо сжимать LOH! Итак, какой из них хуже? Компактный LOH или имеющий фрагментацию LOH?

Ответы на вопрос(1)

Ваш ответ на вопрос