У меня есть приложение, которое выполняет кучу разбора текста. После каждого прохода он выплевывает некоторую информацию в базу данных и очищает все внутреннее состояние..Net Growing Memory Issue
Моя проблема - это память, выделенная в Windows Task Mgr/Resource Monitor, продолжает расти и расти. Я сделал некоторый профиль, используя .Net Mem Profiler, и похоже, что он должен опускаться. Вот снимок экрана с профилировщика:
Но в целевой Mgr после каждого прохода к памяти частного рабочего набора увеличивается. Я бы хотел, чтобы память вырастала по мере ее использования, а затем возвращалась на нормальный уровень после каждого прохода, таким образом я мог поддерживать эту работу.
Любые советы о том, что искать или какие-либо идеи, что вызывает это?
У вас возникли проблемы с фактическим исчерпанием памяти? Или это просто упреждающее беспокойство? :) .net любит держаться за память на некоторое время ... Я не вижу здесь ничего необычного. Если это не вызовет проблему, я бы не стал слишком беспокоиться об этом. – cHao
У меня есть большие импортные задания, которые используют несколько концертов памяти, прежде чем они агрегируют его и помещают в SQL. После выполнения нескольких из них он заканчивает тем, что потребляет всю память в системе и перестает работать. –
Можете ли вы опубликовать трассировку, показывающую использование кучи в каждом поколении и экземплярах в куче? Будет легче протестировать, если вы используете небольшую пробную информацию для тестирования и сравниваете моментальный снимок памяти после каждого прохода. –