Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

insufficient memory [D5, Paradox]


Nikkk ©   (2002-08-14 13:10:00) 

Помогите.
После запуска приложения(БД)5-6 раз появляется сообщение:
"Insufficient memory for this operation".
Наверное приложение не освобождает память.
Как этого избежать.
Если можно, то поконкретнее.


Nikkk   (2002-08-14 15:24:00) [1]

Если это поможет, то в "Диспетчере" их видно на вкладке "Процессы"


Nikkk   (2002-08-14 15:14:00) [2]

Я так и делаю.
Но после закрытия приложения, оно не освобождает память, и при следующем запуске в "диспетчере" появляется ещё одна запись. Т.Е. это выглядит так:
a.exe
a.exe
a.exe
a.exe
...
Вот когда их все закроешь в "диспетчере", тогда можно запустить приложение ещё 5 раз.


SaS13   (2002-08-14 15:13:00) [3]

Попробуй завершать его так:
Application.Terminate;


Nikkk   (2002-08-14 15:08:00) [4]

Нет


SaS13   (2002-08-14 14:55:00) [5]

Используешь потоки в приложении?


Nikkk   (2002-08-14 14:52:00) [6]

Да смешно. А серьёзно?
Запускается не копия. Приложение закрывается, но остаётся занимаемая им память (закрывается матодом terminate).Т.е пользователь не видит уже закрытое приложение, но оно (и его копии)занимают память.


Johnmen   (2002-08-14 14:07:00) [7]

Nikkk (14.08.02 13:30)

Не запускай его копии ! :)))))


Nikkk   (2002-08-14 13:30:00) [8]

Это понятно, а как освобождать память от приложения после его закрытия,чтобы потом не запускалась его копия.


Johnmen   (2002-08-14 13:30:00) [9]

...особенно если все формы создаютя статически...


Mike Kouzmine   (2002-08-14 13:25:00) [10]

Несколько копий? А что тогда удивляться?


Nikkk   (2002-08-14 13:24:00) [11]

То есть после вызова какой-либо формы методом show, при закрытии нужно освобождать память? Или после завершения работы приложения?
А как это сделать. У меня под рукой нет книг и посмотреть негде.
P.S. Я смотрел в "Диспетчере" - там отображается несколько копий проекта. Если процесс удалить в "Диспетчере", то можно запустить опять несколько раз.


Desdechado   (2002-08-14 13:15:00) [12]

освобождать память :)

не забывать уничтожать объекты, созданные вручную, хэндлы WinAPI и т.д.


Mike Kouzmine   (2002-08-14 13:12:00) [13]

Освобождать.
А причины могут быть другие, например, запустил, не понравилось, нажал ктрл-ф2.


Наверх

Титульная страница Поиск, карта сайта Написать письмо