Форум: "Основная";
Текущий архив: 2004.07.11;
Скачать: [xml.tar.bz2];
ВнизКак освободить память Найти похожие ветки
← →
nick (2004-06-24 09:16) [0]Приложение, постоянно загруженное, срабатывает по таймеру несколько раз в сутки. При срабатывании открываются несколько баз данных (через ADO) и между ними выполняются транзакции. Когда приложение неактивно, занимает 800кб в памяти. При срабатывании объем памяти возрастает до 8Мб и после окончания работы с БД не уменьшается (все соединения TADOConnection закрываются). Как можно освободить память?
← →
Тимохов © (2004-06-24 10:27) [1]это один из точно правильных ответов, но вря ли вам он будет полезен: написать свой менеджер памяти в дельфи. Это особенность менеджера памяти в дельфи - он захватывает больше чем нужно из рассчета, что память может пригодится. Именно из-за этого по скорости работы с маленькими блоками памяти менеджер памяти дельфи в сотни раз превосходит, например, стандартную кучу windows.
Возможно, что есть способ заставить отдать штатный манаджер памяти лишнюю память. Я его к сожалению не знаю.
← →
Игорь Шевченко © (2004-06-24 10:56) [2]
> Как можно освободить память?
1) Чем определяется объем памяти ?
2) А зачем ее освобождать ?
← →
nick (2004-06-24 11:05) [3]2 Игорь Шевченко
Извини, не понял 1й вопрос. А по поводу второго - смертельного ничего нет, просто некрасиво.
← →
Думкин © (2004-06-24 11:08) [4]> [3] nick (24.06.04 11:05)
А что некрасиво? И как все-таки с 1-м?
← →
Игорь Шевченко © (2004-06-24 12:23) [5]
> Когда приложение неактивно, занимает 800кб в памяти. При
> срабатывании объем памяти возрастает до 8Мб
Чем определяются эти цифры ?
← →
Anatoly Podgoretsky © (2004-06-24 12:28) [6]Ну наверно 8 мб для АДО нормально
Страницы: 1 вся ветка
Форум: "Основная";
Текущий архив: 2004.07.11;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.032 c