Форум: "Начинающим";
Текущий архив: 2008.03.30;
Скачать: [xml.tar.bz2];
ВнизВопрос про 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…
SomeProc(Mem1, Mem2); // после этого Mem1 — больше мне не нужен
finally
Mem1.Free;
end;
Mem2…
finally
Mem2.Free;
end;
← →
sancho2 (2008-03-03 11:08) [3]А такое, как у меня, - это нормально?
← →
Kolan © (2008-03-03 11:10) [4]> А такое, как у меня, — это нормально?
Работать будет, но, имхо, это ненормально…
← →
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;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.044 c