Как получить кучу памяти, выделенной для каждого поколения (Gen0, Gen1, Gen2)? - PullRequest
0 голосов
/ 19 февраля 2012

Как указано в CLR через C #, «при инициализации CLR выбирается размер бюджета для каждого поколения».Предполагается, что 256 КБ для Gen0, 2 МБ для Gen1, 10 МБ для Gen2. (Не уверен, включает ли это кучу больших объектов)

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

Я знаю о методе GC.GetTotalMemory (), который возвращает общее количество использованной памяти, но не дает информации о потреблении за поколение.

Есть ли способ получить размер кучивыделено каждому поколению?

1 Ответ

3 голосов
/ 19 февраля 2012

Если вы действительно хотите углубиться в управление памятью .NET, тогда я рекомендую проверить эти ссылки:

Приведенные выше ссылки предоставляют много полезного И написан профилировщик памяти CLRMS, который поставляется с полным исходным кодом ...

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