Я пытаюсь профилировать приложение UWP (Universal Windows Platform) в Visual Studio, чтобы увидеть, что приводит к тому, что использование моей процессорной памяти настолько велико.Приложение UWP: использование памяти процесса против использования кучи
Я использую встроенные средства диагностики Visual Studio, и мне не повезло. Он показывает мое использование памяти процесса на 93 мегабайта, в то время как куча показывает 12,17 МБ, а управляемая куча - 1,56 МБ.
Был только другой случай, когда пробежал Использование памяти процесса до около 458 МБ и хранится лазание, но когда я сделал снимок, он не сказал мне значения любого из объектов, должен был вызвать его, а фактическая память, которую он утверждал, была настолько меньше, чем память процесса.
Я не уверен, если я просто не понимаю, как работает профайлер, или я просто делаю что-то совершенно неправильно полностью.
Управляемая куча хранит массу памяти спереди, фактически не используя ее. Цифры, которые вы получаете за * Managed Heap *, - это количество используемой управляемой кучи. Неиспользованная управляемая куча по-прежнему способствует использованию памяти вашего приложения. При написании кода на неуправляемом языке цифры будут менее запутанными. – IInspectable
@Inpectable, который имеет большой смысл, но зачем ему выделять столько памяти, сколько необходимо? Существуют и другие случаи, когда мое использование памяти процесса составляет около 700 МБ, а моя управляемая куча по-прежнему составляет всего около 50 МБ. –
@IInspectable. Я просто добавил еще одну фотографию с несколькими снимками, которые пытаются объяснить мою проблему. –