В чем разница между размером кучи и размером частных байтов?C#

Место общения программистов C#
Anonymous
В чем разница между размером кучи и размером частных байтов?

Сообщение Anonymous »

У меня есть приложение .Net 4.7 (WPF), потребление памяти которого увеличивается до 5,785 ГБ в частных байтах, но байты кучи составляют 4,260 ГБ, как показано на рисунке, полученном Process-Explorer:
Изображение

Если я запускаю GC явно (

Код: Выделить всё

GC.Collect
и GC.WaitForPendingFinalizers), потребление памяти снова снижается до 4,260 ГБ. Если я не вызываю GC явно, потребление памяти никогда не снижается (остается на уровне 5,780 ГБ).
Может ли кто-нибудь объяснить такое поведение и возможные причины? Что такое «Размер кучи» и «Размер частных байтов» и что может представлять собой разница между ними?

Подробнее здесь: https://stackoverflow.com/questions/797 ... bytes-size

Вернуться в «C#»