Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
Форум программистов > Базы данных под .NET > уничтожить коннекшен |
Автор: kobra 18.12.2006, 11:48 | ||||
здравствуите господа написал метод возвращающи dataReader,
так как ридер работает, значит конекшен сушествует, но если он существует, как же его уничтожить? но в принципе, после завершения метода все локалние обьекты автоматом удаляются, но тогда как ридер работает? я чего то не понемаю, или одно из двух ![]() |
Автор: kobra 18.12.2006, 12:54 | ||||||
|
Автор: Дрон 18.12.2006, 13:04 | ||||
Я считаю, что вообще не стоит делать метод, возвращающий DataReader. Пусть уж он лучше возвращает OleDbCommand, через которую ты и до Connection доберёшься, и ExecuteReader выполнишь. Добавлено @ 13:05
Когда-нибудь да станет, но лучше (гораздо лучше) закрывать его вручную. |
Автор: kobra 18.12.2006, 13:42 | ||
![]()
|
Автор: Pankon 20.12.2006, 11:14 | ||||
- коннект будет закрыт при
Все |
Автор: kobra 20.12.2006, 13:14 | ||
Pankon спосибо, я даже не закривал коннект. но веть вопрос не в том, как закрыть, а втом как уничтожить (Dispose)
__DR.Dispose() делаю, тут просто. но что после этого будет с __Comm и __Conn? реално, в данном проекте это не актуално, но на будущее веть нужно понемать? |
Автор: Дрон 20.12.2006, 13:28 | ||
Методы Dispose и Close для Connection делают абсолютно одно и то же. Важно вовремя закрывать соединение, а вот когда будет уничтожен .NET-овский объект мы уже контролировать не можем. И что, самое главное, нам это и не нужно ![]() Распространено заблуждение о том, что Dispose в .NET -- это аналог delete в С++. Но это совершенно не верно. А Pankon, кстати, предложил очень хорошее решение. Я-то совсем забыл о такой возможности. |
Автор: mr.DUDA 20.12.2006, 13:31 |
Если убивать коннекшн но не команду и reader, они подберутся сборщиком мусора, ничего страшного в этом нет. |
Автор: Pankon 20.12.2006, 14:44 |
если тебе принципиально нужно обьект из памяти удалить, то тогда после __DR.Close(); делай System.GC.Collect(), но в большенстве случаев это и не нужно, как было сказано выше... |
Автор: kobra 20.12.2006, 15:39 | ||
![]() просто я не вижу когда будут удалени ссылки на эти обьекты. асальное все ерунда ![]() Добавлено @ 15:43 все господа. понял. все понял. всем спосибо! |