Re: Порядок закрытия FileStream в Dispose
От: TK Лес кывт.рф
Дата: 15.09.14 04:46
Оценка:
Здравствуйте, Fortnum, Вы писали:

F>Предположим, есть некий класс A, у которого 2 поля типа FileStream, каким-то образом инициализируются. Если для внутреннего употребления надо сделать так, чтобы эти FileStream'ы в определенном порядке деинициализировались, я правильно понимаю, что шаблон Dispose будет ошибочным вариантом, т.к. в момент исполнения A.Dispose эти FileStream'ы уже могут быть закрыты GC?


Вы путаете Dispose и Finalize. GC знает только про Finalize. Шаблон Dispose — это реализация IDisposable и использование в нем финализатора в большинстве случаев неправильно.

F>Как лучше сделать для своего внутреннего употребления?


Для внутреннего применения лучше следить за созданными A и своевременно вызывать Dispose.
Если будет спокойнее то и A.List<FileStream> тоже мало чего гарантирует
Если у Вас нет паранойи, то это еще не значит, что они за Вами не следят.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.