![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
|
Опции темы | Поиск в этой теме |
![]() |
#11 | |
Подтвердите свой е-майл
Регистрация: 29.08.2012
Сообщений: 4,011
|
![]() Цитата:
|
|
![]() |
![]() |
![]() |
#12 |
Подтвердите свой е-майл
Регистрация: 29.08.2012
Сообщений: 4,011
|
![]()
Смотрите, все просто.
увас в коде: Код:
чтобы этого не произошло надо защитить: Код:
![]() но, из справки мы узнали (а мы это узнали, не правда ли?) что BinaryWriter имплементирует IDisposable, а следовательно его можно запихнуть в using, а using обеспечивает то, что на выходе из его области, не важно по какой причине, всегда вызывается метод Dispose. Все, праздник танцы и хороводы... ![]() PS: Dispose можно вызвать если явно привести к IDisposable. Последний раз редактировалось eval; 19.10.2012 в 12:36. |
![]() |
![]() |
![]() |
#13 |
Пользователь
Регистрация: 20.10.2012
Сообщений: 11
|
![]()
Вам правильно советуют, используйте конструкцию вида using (BinaryReader reader = new BinaryReader...
В этом случае, если где то в коде вылетит ексепшин, то ресурсы будут гарантированно освобождены и файл не подвиснет в заблокированном состоянии. |
![]() |
![]() |
![]() |
#14 |
Старожил
Регистрация: 02.01.2011
Сообщений: 3,328
|
![]()
Теперь понял, что можно двумя равноправными способами написать:
Оператор using: ![]() Код:
![]() Код:
Я понимаю, что ответ кроется в весии Framework'a. Где это явно увидеть в документации? Дайте ссылку, пожалуйста. Я не могу найти ответа. Код:
Последний раз редактировалось 8Observer8; 24.10.2012 в 09:50. |
![]() |
![]() |
![]() |
#15 |
Подтвердите свой е-майл
Регистрация: 29.08.2012
Сообщений: 4,011
|
![]()
http://msdn.microsoft.com/ru-ru/library/dd383502.aspx см. секцию супортед версий.
|
![]() |
![]() |
![]() |
#16 | |
Старожил
Регистрация: 02.01.2011
Сообщений: 3,328
|
![]() Цитата:
![]() Из первого моего сообщения: Код:
Последний раз редактировалось 8Observer8; 24.10.2012 в 11:10. |
|
![]() |
![]() |
![]() |
#17 |
Подтвердите свой е-майл
Регистрация: 29.08.2012
Сообщений: 4,011
|
![]()
ну так он тут во первых имеет другую сигнатуру, да и еще и защищен (protected)
protected virtual void Dispose(bool disposing) это в 4 сделали доп. метод, открытый. Вернее он и там тоже есть, только не открытый (poublic). да и скорее всего експлицит. Последний раз редактировалось eval; 24.10.2012 в 11:13. |
![]() |
![]() |
![]() |
#18 |
Старожил
Регистрация: 02.01.2011
Сообщений: 3,328
|
![]()
Спасибо! Есть пища для размышлений, теперь буду переваривать
![]() |
![]() |
![]() |
![]() |
|
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Так уж пхп недоступен | Ципихович Эндрю | Свободное общение | 9 | 16.09.2012 14:00 |
не работает dispose | MYriad | Помощь студентам | 1 | 02.10.2011 14:19 |
Как обозначается NEW и DISPOSE в блоксхеме??? | Андрю)(@ | Паскаль, Turbo Pascal, PascalABC.NET | 1 | 08.12.2008 21:15 |
Почему Dispose не освобождает память? | DeLorean | Общие вопросы Delphi | 4 | 08.04.2008 00:17 |