| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Delphi: Базы данных и репортинг > Постоянная утечка памяти |
| Автор: Ace Wentura 26.4.2005, 09:58 |
| Происходит буквально следующее. Есть метод. К нему обращаясь передают параметры. Эти параметры забиваются сначала в TpFIBDataSet, его активизирую и получаю результат. По итогам создаю SQL-запрос и пихаю его в TpFIBQuery. Аналогично активизирую и получаю результат. Так вот, после выполнения запросов каждый раз сжирается некая память. Всё бы ничего, да она ещё и не очищается. Но это тоже не проблема. Проблема в том, что после 20000 раз (а это ещё не предел) системе перестаёт хватать памяти даже виртуальной. Как с этим бороться? |
| Автор: Петрович 26.4.2005, 11:16 |
| Ошибка в 17-й строке. |
| Автор: Ace Wentura 26.4.2005, 11:24 |
| А что это означает? |
| Автор: fess 26.4.2005, 11:40 |
| Это означает, что неплохо бы выложить код для просмотра, а то телепатических способностей не хватает для диагностики ошибки |
| Автор: Ace Wentura 26.4.2005, 11:47 | ||
| Извиняюсь. Я просто подумал, что это какая-то стандартная ошибка типа: забыл сделать free. Или ещё что в этом роде. Вот код.
Запросы SQL сократил, но они работают точно. |
| Автор: Ace Wentura 27.4.2005, 12:20 |
| Всё, багу поправил. Дело было не в запросах и не в компонентах работы с БД, а в том, что не чистиллись корректно списки. Но всё-таки интересно, сказывается ли как-нибудь на объёме используемой оперативки то, вызываю ли я принудительно Transaction.commit(rollback) или не вызываю (как у меня)? |