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

Вниз

Течет память. Кто виноват и что делать?   Найти похожие ветки 

 
pasha_golub ©   (2012-10-17 11:10) [0]

Привет всем.

Наткнулся на примечательный баг.


procedure CheckError;
var E: pointer;
begin
 E := AcquireExceptionObject;
 if Assigned(E) then
   ShowMessage(TObject(E).ToString);
 ReleaseExceptionObject;
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
 try
   raise EAbort.Create("Error Message");
 except
   CheckError;
 end;
end;


Этот код течет. Утекают объекты Exception.

Я знаю, что можно сделать raise. Но я следую букве мануала, гласящего:


AcquireExceptionObject increments the exception object"s reference count. Make sure that the reference count is decremented when the exception object is no longer needed. This happens automatically if you use the exception object to raise the exception again. In all other cases, every call to AcquireExceptionObject must have a matching call to ReleaseExceptionObject. AcquireExceptionObject/ReleaseExceptionObject sequences can be nested.


 
Rouse_ ©   (2012-10-17 11:19) [1]

http://qc.embarcadero.com/wc/qcmain.aspx?d=5815


 
pasha_golub ©   (2012-10-17 11:25) [2]


> Rouse_ ©

Какого ж рожна они тогда в мануале сносок не сделают?


 
Rouse_ ©   (2012-10-17 11:46) [3]


> pasha_golub ©   (17.10.12 11:25) [2]
> Какого ж рожна они тогда в мануале сносок не сделают?

Ты действительно думаешь что я смогу ответить на этот вопрос? :)))


 
pasha_golub ©   (2012-10-17 12:37) [4]


> Ты действительно думаешь что я смогу ответить на этот вопрос?
>  :)))

Ну ты ж там в курилках вёл душеспасительные беседы ;)


 
Германн ©   (2012-10-17 12:44) [5]


> Ты действительно думаешь что я смогу ответить на этот вопрос?

Он готовится к КМП :)


 
Jeer ©   (2012-10-17 18:27) [6]

"Если течет - вызвать сантехника или сменить памперс" (С)


 
Rouse_ ©   (2012-10-17 19:10) [7]


> pasha_golub ©   (17.10.12 12:37) [4]
> Ну ты ж там в курилках вёл душеспасительные беседы ;)

Ну так я и с тобой их веду и по аське и лично, много я о твоей работе рассказать могу? :)



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

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

Наверх




Память: 0.48 MB
Время: 0.06 c
15-1338277495
Scott Storch
2012-05-29 11:44
2013.03.22
отображение имени файла


2-1333952944
Jenyok
2012-04-09 10:29
2013.03.22
Размеры и положение окна в OpenDialog и т.п.


15-1347612790
LDV
2012-09-14 12:53
2013.03.22
Управление флагами в InnoSetup


1-1295420389
noob_one
2011-01-19 09:59
2013.03.22
DBGridEh. Как программно скопировать в буфер обмена?


15-1352912735
Artem
2012-11-14 21:05
2013.03.22
C mail.ru на yandex.ru можно пересылать программы?