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

Вниз

Вопрос про try   Найти похожие ветки 

 
sancho2   (2008-03-03 11:03) [0]

 Mem1 := TMemoryStream.Create;
 try
   Mem1...
   Mem2 := TMemoryStream.Create;
   try
     SomeProc(Mem1, Mem2); // после этого Mem1 - больше мне не нужен
   finally
     Mem1.Free;
   end;
   Mem2...
 finally
   Mem2.Free;
 end;


Как в таком случае делать try и finally: я хочу сразу после SomeProc освободить Mem1.

?


 
Сергей М. ©   (2008-03-03 11:05) [1]


> я хочу сразу после SomeProc освободить Mem1


Ну так ты именно это и делаешь...


 
Kolan ©   (2008-03-03 11:07) [2]

> Как в таком случае делать try и finally: я хочу сразу после
> SomeProc освободить Mem1.

Как-то это мозг разрушает. Обычно:

Создал «А»
try
finally
 Удалил «А»
end;


А у тя каша.

Mem2 := TMemoryStream.Create;
try
 Mem1 := TMemoryStream.Create;
 try
   Mem1&#133
   SomeProc(Mem1, Mem2); // после этого Mem1 — больше мне не нужен
 finally
   Mem1.Free;
 end;
 Mem2&#133
finally
 Mem2.Free;
end;


 
sancho2   (2008-03-03 11:08) [3]

А такое, как у меня, - это нормально?


 
Kolan ©   (2008-03-03 11:10) [4]

> А такое, как у меня, — это нормально?

Работать будет, но, имхо, это ненормально&#133


 
Palladin ©   (2008-03-03 12:07) [5]


> sancho2   (03.03.08 11:08) [3]

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


 
Anatoly Podgoretsky ©   (2008-03-03 19:00) [6]

> sancho2  (03.03.2008 11:08:03)  [3]

Да вполне нормально, типичный дурдом.



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

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

Наверх




Память: 0.48 MB
Время: 0.03 c
3-1193992246
umbra
2007-11-02 11:30
2008.03.30
как получить DDL таблиц, сделанных в конструкторе?


15-1203079073
djabber
2008-02-15 15:37
2008.03.30
Где можно скачать книги по игре Го?


15-1202459292
arhis
2008-02-08 11:28
2008.03.30
Окно Structure


6-1183322193
MOO
2007-07-02 00:36
2008.03.30
Как отследить подключение к Интернет по DialUP?


6-1182924533
jailbrecker
2007-06-27 10:08
2008.03.30
Как осуществить синхронизацию времени через инет сервисы