Как узнать сколько памяти потребляет приложение (на С#) при работе? Либо "участок кода" - допустим есть метод который считывает данные, можно ли узнать сколько памяти он потребляет во время работы.
ds.ReadXml(xml);
IDE - VS2012
Ответ
Отслеживание изменений в оперативной памяти:
С помощью кода:
long before = GC.GetTotalMemory(false);
// ваш код тут
long after = GC.GetTotalMemory(false);
int consumedInMegabytes = (after - before) / (1024 * 1024);
Опционально может потребоваться собрать мусор до и/или после
тестируемого кода (параметр GetTotalMemory поставить в true).
С помощью профайлеров (суть аналогична): снять снэпшот до
тестируемого кода, выполнить код, снять снэпшот после, сравнить два
снэпшота. Профайлер поможет ответить не только на на вопрос
"сколько?", но и "на что?".
Комментариев нет:
Отправить комментарий