Почему процесс сброса .NET увеличивает использование памяти

StackOverflow https://stackoverflow.com/questions/2190900

  •  25-09-2019
  •  | 
  •  

Вопрос

У нас есть услуга .NET, используя ~ 30 МБ памяти при запуске. (Vm ~ = mem memorage)
Я хотел бросить процесс и узнать, что удерживает эти 30 МБ.

Отладчик CDB, создающий мини-дамп Увеличение использования MEM на 100 МБ.
От свалки я мог видеть, что эти 100 МБ были памятьми изображениями (DLL)

-------------------- Usage SUMMARY --------------------------
    TotSize (      KB)   Pct(Tots) Pct(Busy)   Usage
    2d07000 (   46108) : 02.20%    28.45%    : RegionUsageIsVAD
   761ac000 ( 1935024) : 92.27%    00.00%    : RegionUsageFree
    64b0000 (  103104) : 04.92%    63.62%    : RegionUsageImage
     900000 (    9216) : 00.44%    05.69%    : RegionUsageStack
       9000 (      36) : 00.00%    00.02%    : RegionUsageTeb
     380000 (    3584) : 00.17%    02.21%    : RegionUsageHeap
          0 (       0) : 00.00%    00.00%    : RegionUsagePageHeap
       1000 (       4) : 00.00%    00.00%    : RegionUsagePeb
       1000 (       4) : 00.00%    00.00%    : RegionUsageProcessParametrs
       2000 (       8) : 00.00%    00.00%    : RegionUsageEnvironmentBlock
       Tot: 7fff0000 (2097088 KB) Busy: 09e44000 (162064 KB)

Использование MEM остается высоким, долго после отладки отладчика. Я хочу знать, что такое корпус Это изображение нагрузки / памяти?

Спасибо.

Это было полезно?

Решение

«Как правило, неиспользуемые страницы не являются частью рабочего набора, всего лишь адресного пространства. Когда вы создаете полный дамп, все страницы в адресном пространстве находятся и записаны на диск. До тех пор, пока размер Дамп в основном эквивалентен размеру адресной площади процесса, что вы описываете, ожидается ».

Я получил ответ от Иван Брюгиоло и Павел Лебединский.

Другие советы

Вы можете использовать профилировщик для анализа потребления памяти.

  1. Nprofiler. - Фосс
  2. Носитель - не бесплатно
Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top