![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Потеря памяти при работе с БД [D5, Paradox]
Tormoz © (2004-05-27 13:19:00)Уважаемые Мастера!
Пока работал на курсовой работой столкнулся с интересной особенностью:
Программа работает через BDE с БД(Paradox), есть несколько форм, пяток DataModules, ну и прочее:
все компоненты стандартные, родные.
Но вот, блин, незадача: программа оставляет за собой т а к и е "хвосты" в памяти после своего завершения,
что в конечном итоге (если запустить ее несколько раз, например,10), можно почитать следующее сообщение на экране:
"Out of resources" или вообще, на белой простыне от windows: "Системе существенно не хватает ресурсов...".
Что за грабли такие?
Все Datasetы перед завершением программы закрываю, с динамической памятью не работаю,формы, модули данных, и те, создаю и уничтожаю программно...
Но Системный Монитор стабильно показывает уменьшение Свободной физической пямяти.
Посоветуйте, если Кто чего знает, Заранее благодарю за внимание и помощь!
Digitman (2004-05-31 11:43:00) [21]
> Tormoz
ты вообще-то уверен, что закрытие твоего приложения (наблюдаемое визуально) однозначно приводит к завершению работы его процесса ?
после нескольких сеансов запуска/завершения программы в TaskManager'е не наблюдается ли более чем один экз-р процесса твоего приложения ?
Tormoz (2004-05-31 11:18:00) [22]To Digitman
"если неоднократно и некорректно завершать сеанс работы с БДЕ..."
Закрываю ВСЕ датасеты, Database.Connected:=false;
Может чего еще надо?
Уже дошел до того, что после закрытия Датасетов убиваю их...
Все равно: 5-7 КВ "схаваны".
И что такое "некорректно"? Можно обрисовать типичную ситуацию?
To Nikolay M.
В том то и дело, что память "хавает" EXEшник!!!
Digitman (2004-05-28 09:24:00) [23]действительно, если неоднократно и некорректно завершать сеанс работы с БДЕ, то через некоторое время очередная попытка стартовать БДЕ-сеанс вернет отказ с диагностикой нехватки сист.ресурсов при иниц-ции БДЕ
Nikolay M. (2004-05-27 21:58:00) [24]Закрытием программу через Ctrl+F2 не грешен?
Desdechado (2004-05-27 21:01:00) [25]Если ты так уверен, что корректно освобождаешь память, то, видимо, проблем быть не должно. Но они есть, значит, что-то ты прозевал. Ищи.
БДЕ отлаживался много лет, дырки там мне неизвестны, а я его мучил долго.
Tormoz (2004-05-27 18:02:00) [26]Алле !!!
Никто не сталкивался с такой проблемой ?