Как указано в заголовке, у меня есть проблема с высокой работой файла с файлами.
Я разрабатываю программу, которая обрабатывает много изображений, которые она загружает с жесткого диска. На каждом изображении он генерирует некоторые данные, которые я сохраняю в списке. Для каждых 3600 изображений я сохраняю список на жестком диске, его размер составляет от 5 до 10 МБ. Он работает так быстро, как может, поэтому он максимизирует один поток процессора.
Программа работает, она генерирует данные, которые она должна использовать, но когда я анализирую ее в Visual Studio, я получаю предупреждение: DA0014: Чрезвычайно высокий уровень активности активной памяти подкачки на диске.
Приобретение памяти в программе, согласно диспетчеру задач, составляет около 50 МБ и кажется стабильным. Когда я запускал программу, у меня было около 2 ГБ, оставшихся без 4 ГБ, поэтому я думаю, что у меня не хватает ОЗУ. http://i.stack.imgur.com/TDAB0.png
В описании правила DA0014 указано: "Количество страниц/количество страниц часто намного больше, чем число страниц Writes/sec, например, так как Pages Output/sec также включает в себя измененные страницы данных из кеша системного файла. Однако, не всегда легко определить, какой процесс несет прямую ответственность за пейджинг или почему.
Означает ли это, что я получаю это предупреждение просто потому, что читаю много изображений с жесткого диска, или это что-то еще? Не совсем уверен, какую ошибку я ищу.
РЕДАКТИРОВАТЬ: Ссылка на вставленный образ.
EDIT1: размер изображений составляет около 300 КБ каждый. Я сдачу каждого из них перед загрузкой следующего.
UPDATE: Выглядит из экспериментов, таких как пейджинг, просто загружая большое количество файлов. Поскольку я не являюсь экспертом в С# или базовом GDI + API, я не знаю, какой из ответов является наиболее правильным. Я выбрал Andras Zoltans, потому что это было хорошо объяснено, и потому что, похоже, он много работал, чтобы объяснить причину новичка вроде меня:)