Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2008.01.27;
Скачать: CL | DM;

Вниз

Работа с памятью   Найти похожие ветки 

 
Washington ©   (2007-12-25 13:05) [0]

Знаю, что нужно в проге работать  с памятью. Знаю, но не совсем :( Когда выделять, когда осовбождать - понятия не имею. Единственное, что я сделал - это уничтожаю формы при их закрытии. Но все равно при работе программы занимаемая ей память всё время увеличивается. Почему так? И если есть сцылки на статьи или книги по работе с памятью - закиньте плз.


 
Правильный_Вася   (2007-12-25 13:10) [1]


> Знаю, что нужно в проге работать  с памятью

если ты явно память не выделяешь, то в чем состоит твоя работа?
освобождать нужно все ресурсы, которые явно сам создал через конструктор или с помощью специальных функций


 
Сергей М. ©   (2007-12-25 13:18) [2]


> Когда выделять


Когда требуется, тогда и выделяй.


> когда осовбождать


Когда более не требуется, тогда и освобождай.


 
Washington ©   (2007-12-25 14:24) [3]


> Правильный_Вася   (25.12.07 13:10) [1]

Значит всё нормально, спасибо. Единственный вопрос - когда создаю форму выделяется x кб. памяти. Когда уничтожаю - освобождается гораздо меньше памяти. Почему?


 
{RASkov} ©   (2007-12-25 14:27) [4]

> [3] Washington ©   (25.12.07 14:24)
> Когда уничтожаю

Случаем не Close?


 
Washington ©   (2007-12-25 15:19) [5]


> {RASkov} ©   (25.12.07 14:27) [4]

MyForm.Close;
MyForm.Release;


 
{RASkov} ©   (2007-12-25 15:26) [6]

> [5] Washington ©   (25.12.07 15:19)

Значит в момент жизни формы ты что-то в ее методах создаешь, не указывая ее(форму) владельцем, например But:=TButton.Create(Application {nil});, и сам не уничтожаешь эти объекты.


 
Kolan ©   (2007-12-25 15:32) [7]

+ Верить менеджеру памати виндовому не надо&#133


 
homm ©   (2007-12-25 15:54) [8]

> [7] Kolan ©   (25.12.07 15:32)
> + Верить менеджеру памати виндовому не надо…

надо


 
Правильный_Вася   (2007-12-25 16:12) [9]


>  Когда уничтожаю - освобождается гораздо меньше памяти.

часть памяти менеждер просто из каких-то соображений не отдал винде
он может отдать их позже или задейтсвовать по твоему требованию снова
это нормально, если ты не забыл что-то сам освободить


 
Washington ©   (2007-12-26 05:12) [10]

Спасибо за помощь.

P.S. Так верить виндовому менеджеру памяти или нет? :)


 
Leonid Troyanovsky ©   (2007-12-26 05:55) [11]


> Washington ©   (26.12.07 05:12) [10]

> P.S. Так верить виндовому менеджеру памяти или нет? :)

perfmon.exe forever

--
Regards, LVT.



Страницы: 1 вся ветка

Текущий архив: 2008.01.27;
Скачать: CL | DM;

Наверх




Память: 0.49 MB
Время: 0.013 c
2-1198586565
Kolan
2007-12-25 15:42
2008.01.27
Запуск долгой операции через ADO, ошибка «Время ожидания вышло»&#133


4-1182835811
cosinus
2007-06-26 09:30
2008.01.27
Потомок TCheckBox и BM_SETCHECK


6-1179131037
Pearled
2007-05-14 12:23
2008.01.27
Как получить сетевой путь к каталогу по его локальному пути?


15-1197908559
Stepper
2007-12-17 19:22
2008.01.27
Castalia 3.* for Delphi 6, 7, 2005


2-1198787613
Артем
2007-12-27 23:33
2008.01.27
Приложение, создающее приложение