Модераторы: Partizan, gambit

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Dispose и Finalize, использует ли кто-нибудь? 
:(
    Опции темы
-ser-
Дата 7.11.2005, 08:36 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 344
Регистрация: 1.2.2005

Репутация: 5
Всего: 13



что касается Finalize, то его по многим причинам не рекомендуется вообще использовать если нет на это острой необходимости. и даже в объектах, работающих c unmanaged ресурсами, если корректно закрывать файл, поток или соединение в сети, то я считаю, даже и здесь его лучше не упоминать. вообще, объекты с этим методом занимает больше по времени разместить и также удалить, что может значительно сказаться на быстродействии. ГК нужно запуститься по меньшей мере 2 раза чтобы полностью удалить такой объект, причем удаляется каждый такой объект по-отдельности, а что если у нас массив из 10000 таких объектов.



--------------------
"Тонкая, однако, работа." 
PM MAIL ICQ   Вверх
Exception
Дата 8.11.2005, 15:36 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Участник Клуба
Сообщений: 4525
Регистрация: 26.12.2004

Репутация: 29
Всего: 186



кстати,
[offtop]
я так и не понял, как ловить исключения, вызванные финалайзером. они же не ловятся обычным способом (т.к. в другом потоке)...
[/offtop]
PM   Вверх
-ser-
Дата 10.11.2005, 07:06 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 344
Регистрация: 1.2.2005

Репутация: 5
Всего: 13



Run-time error
Цитата
как ловить исключения, вызванные финалайзером
насколько я знаю, само исключение, вызванное финалайзером игнорируется рантаймом.



--------------------
"Тонкая, однако, работа." 
PM MAIL ICQ   Вверх
Exception
Дата 10.11.2005, 14:31 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Участник Клуба
Сообщений: 4525
Регистрация: 26.12.2004

Репутация: 29
Всего: 186



не-а.
я пробовал вроде такого:
Код

Class X
Protected Overrides Sub Finalize()
Throw New ApplicationException("FUCK YOU!")
End Sub
End Class
Module main
Sub Main
Try
Dim myX As New X()
myX = Nothing
GC.Collect()
Catch e as Exception
End Try
Console.ReadLine()
End Sub
End Module

эксепшн лез
PM   Вверх
Ответ в темуСоздание новой темы Создание опроса
Прежде чем создать тему, посмотрите сюда:
mr.DUDA
THandle

Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов.
Что делать если Вам помогли, но отблагодарить помощника плюсом в репутацию Вы не можете(не хватает сообщений)? Пишите сюда, или отправляйте репорт. Поставим :)
Так же не забывайте отмечать свой вопрос решенным, если он таковым является :)


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, mr.DUDA, THandle.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Общие вопросы по .NET и C# | Следующая тема »


 




[ Время генерации скрипта: 0.0413 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.