Hello, "Tony_K" > > так вот, после блока с юзингом стопроцентно освободятся ресурсы или никто > не гарантирует, что сборщик мусора сразу же сработает?
using и сборка мусора вещи мало связанные... Фактически, использование using
рзначает, что для защищаемого объекта будет вызван метод Dispose в не
зависимости от возможных исключений. При этом, сам объект останется жить и
будет собран сборщиком мусора тогда, когда этомк сборщику будет удобно
Posted via RSDN NNTP Server 1.9
Если у Вас нет паранойи, то это еще не значит, что они за Вами не следят.
Re: Гарантирует ли using немедленное удаление объекта?
В приведенном примере гарантировано освободится файл, а не managed объект StreamWriter.
GC удалит managed объект когда ему удобнее будет, а вот за удаление unmanaged русурсов отвечает объект который их создал.
Конструкция using используется при работе с unmanaged русурсами: файлы, соединение с БД, GDI объекты и т.д.
... << RSDN@Home 1.1.4 beta 7 rev. 447>>
Гарантирует ли using немедленное удаление объекта?
От:
Аноним
Дата:
01.06.05 11:23
Оценка:
Вызовется Dispose, а сборщик — нет.
Если очень хочется — GC.Collect().
RE: Гарантирует ли using немедленное удаление объекта?
От:
Аноним
Дата:
01.06.05 11:29
Оценка:
в методе я пишу:
using (StreamReader clsStreamReader = File.OpenText(strPath))
{
//Прочитать настройка из файла.
....
}
....
так вот, после блока с юзингом стопроцентно освободятся ресурсы или никто не гарантирует, что сборщик мусора сразу же сработает?
а сборщик мусора сразу и не срабатывает
ASP.NET forever! www.dealingcity.ru
Здравствуйте, V.Petrovski, Вы писали:
VP>В приведенном примере гарантировано освободится файл, а не managed объект StreamWriter. VP>GC удалит managed объект когда ему удобнее будет, а вот за удаление unmanaged русурсов отвечает объект который их создал.
VP>Конструкция using используется при работе с unmanaged русурсами: файлы, соединение с БД, GDI объекты и т.д.