Стратегия по умолчанию для сжатия кучи больших объектов - PullRequest
0 голосов
/ 21 ноября 2018

Какова по умолчанию стратегия, используемая платформой .NET для сжатия кучи больших объектов?

  • никогда не уплотняется
  • уплотняется через некоторое время (не так агрессивно, каккуча поколений)

Что держит?Если «через некоторое время», есть ли некоторые подробности о «как долго» или «когда»?

(меня интересуют версии .NET Framework выше 4.5)

1 Ответ

0 голосов
/ 21 ноября 2018

По умолчанию LOH вообще не сжимается.Потому что это может быть дорого.

Начиная с 4.5.1, вы можете использовать GCSettings, чтобы изменить это.Возможны варианты CompactOnce и Never.

Таким образом, вы можете вручную запускать сжатие, управляемое логикой вашего приложения.

LOH собирается (очищается) только во время сбора данных поколения 2.Это может привести к вашей путанице через некоторое время.Но сбор не является уплотнением.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...