Вниз
Скачать: CL | DM;

Автоматическое уничтожение объектов   Найти похожие ветки 

← →
Джо ©   (2007-03-20 13:37) [40]

> [39] oxffff ©   (20.03.07 13:36)
> Век живи, век учись.

Дык, на то оно и автоматическое уничтожение интерфейсов в Делфи :)


← →
ANB ©   (2007-03-20 13:43) [41]

http://www.softwarer.ru/memory.html

Тута разжевано все. ИМХО - в делфи уже есть все, что надо.

Код вида :

Obj1 := nil;
Obj2 := nil;
Obj3 := nil;
try
 Obj1 := TObj1.Create;
 Obj2 := TObj2.Create;
 Obj3 := TObj3.Create;
 ...
 куча полезного кода
finally
 FreeAndNil(Obj1);
 FreeAndNil(Obj2);
 FreeAndNil(Obj3);
end;

практически безопасен с точки зрения утечки.
Ну если сильно очень бояться, можно свой MyFreeAndNil написать с подавлением исключений.


← →
oxffff ©   (2007-03-20 13:49) [42]


> Джо ©   (20.03.07 13:37) [40]
> > [39] oxffff ©   (20.03.07 13:36)
> > Век живи, век учись.
>
> Дык, на то оно и автоматическое уничтожение интерфейсов
> в Делфи :)


И не только их.

Вот как они "хитро" переходят на следущую за jmp @HandleFinally инструкцию

Вот код в HandleFinally
   ADD     ECX,TExcDesc.instructions (5 байт)
   call ecx


← →
Джо ©   (2007-03-20 13:57) [43]

> [42] oxffff ©   (20.03.07 13:49)
> Вот как они "хитро" переходят на следущую за jmp @HandleFinally
> инструкцию

Действительно, «хитро».


← →
Loginov Dmitry ©   (2007-03-20 15:30) [44]

> [41] ANB ©   (20.03.07 13:43)


+1

А то навыдумывали тут кто на что горазд ;)



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

Скачать: CL | DM;



Память: 0.52 MB
Время: 0.031 c
15-1174476821
Johnmen
2007-03-21 14:33
2007.04.15
Дайте код!


2-1175080484
BigVova
2007-03-28 15:14
2007.04.15
Размер HTML документа в браузере


2-1174889808
Megabyte
2007-03-26 10:16
2007.04.15
Отлов нужного исключения


2-1174993098
smaller
2007-03-27 14:58
2007.04.15
Как определить существование формы ?


15-1174497274
Другой
2007-03-21 20:14
2007.04.15
Старые пивные этикетки (фото)




   Наверх