|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
03.03.2012, 12:04 | #1 |
Форумчанин
Регистрация: 21.07.2007
Сообщений: 103
|
Что забирает память?
Всем привет.
Вот код. Приложение в цикле качает страничку и парсит из нее нужные данные. После первого прохождения цикла приложение берет около 170Мб оперативки. С каждым следующим прохождением забирает еще по 10-50Мб. Подскажите, что именно берет память? Код:
|
03.03.2012, 12:17 | #2 |
Старожил
Регистрация: 30.12.2009
Сообщений: 11,426
|
Не вижу секций Try finally...
|
03.03.2012, 12:19 | #3 |
Форумчанин
Регистрация: 21.07.2007
Сообщений: 103
|
Ок, немного поправил код:
Код:
|
03.03.2012, 12:34 | #4 |
Старожил
Регистрация: 30.12.2009
Сообщений: 11,426
|
CloseFile надо в Finally закрывать, ровно как и освобождение любых объектов/ресурсов.
Код:
|
03.03.2012, 13:02 | #5 |
Форумчанин
Регистрация: 21.07.2007
Сообщений: 103
|
Код:
Но все равно после каждого прохода цикла программа забирает еще кусок памяти (т.е. ничего не изменилось). Кто подскажет что берет? |
03.03.2012, 13:26 | #6 |
Старожил
Регистрация: 30.12.2009
Сообщений: 11,426
|
Тупо:
ставим бряк и смотрим после какой команды уеличивается память. |
03.03.2012, 13:34 | #7 |
Форумчанин
Регистрация: 21.07.2007
Сообщений: 103
|
Да нет, тут не так.
Тут после первого прохода память на приложение 170Мб. Потом, во время загрузки страницы в память и в templist, на приложение память уже примерно 250Мб. А вот потом после высвобождения и закрывания память уже в исходные 170Мб не выходит, а получается 178Мб примерно. После третьего прохода 185Мб, ну и т.д. |
03.03.2012, 13:37 | #8 |
Старожил
Регистрация: 28.01.2009
Сообщений: 21,000
|
это нормально.
если оно стабильно не растет. Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел. Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите. |
03.03.2012, 13:54 | #9 |
Форумчанин
Регистрация: 21.07.2007
Сообщений: 103
|
Дак ведь растет Ну в том смысле, что после каждого прохода память, выделенная на приложение увеличивается. Т.е. к примеру после 10 проходов смотрю диспетчером: 240Мб, через 20 проходов 320Мб.
|
03.03.2012, 14:24 | #10 |
Форумчанин
Регистрация: 21.07.2007
Сообщений: 103
|
Хотя нет, подождал побольше проходов - память то забирается, то высвобождается. Закономерности не заметил, решил забить
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
что такое последовательная, связная и непрерывная память?? | cherry097 | Паскаль, Turbo Pascal, PascalABC.NET | 1 | 22.08.2011 13:11 |
что почитать о создании интерпритатора(как компилятора в память) | Пепел Феникса | Общие вопросы по программированию, компьютерный форум | 5 | 30.11.2009 19:07 |
Память, (что тяжелее:функция или процедура) | WF7 | Паскаль, Turbo Pascal, PascalABC.NET | 4 | 08.06.2009 08:09 |
Плохая память или что? | Rembo | Свободное общение | 13 | 06.10.2008 19:10 |