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

Не опасен ли следующий код   Найти похожие ветки 

 
Mim1 ©   (2004-05-12 13:45) [0]

В программе применяю такой код, и думаю не опасно ли это (?), ведь переменная amethod локальная и ее память освобождается сразу после выхода из процедуры.

procedure CkgExceptionHandler(ASelf,  Sender:  TObject ; E: Exception);
begin
 DoError(e);
end;

Procedure CkgErrorInit;
var
 amethod:  TMethod;
begin
 amethod.Code  :=  @CkgExceptionHandler;
 amethod.Data  :=  Application;
 Application.OnException := TExceptionEvent(amethod);
end;


 
Тимохов ©   (2004-05-12 13:49) [1]


> Mim1 ©   (12.05.04 13:45)

на пямять не помню - надо асм смотреть.
Посмотрите сами  что происходит при присвоении Application.OnException := TExceptionEvent(amethod) - в Application.OnException устанавливается адрес amethod или копируется значение amethod.
Думаю, что второе.
По сему - думаю, что не опасно.


 
Тимохов ©   (2004-05-12 13:53) [2]


> Mim1 ©   (12.05.04 13:45)  

посмотрел - не опасно.
копируется значение amethod.



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

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



Память: 0.45 MB
Время: 0.044 c
14-1083261184
Verg
2004-04-29 21:53
2004.05.23
Favorit или favourite?


14-1083354358
Viagrom
2004-04-30 23:45
2004.05.23
Програмисты самоучки, профи или ...?


3-1082957913
Litr
2004-04-26 09:38
2004.05.23
Файл связи .udl


3-1082720520
Sam Stone
2004-04-23 15:42
2004.05.23
Длинный SQL запрос


3-1082701593
Andrey_Zh
2004-04-23 10:26
2004.05.23
Базы данных




   Наверх