Как вы определяете, какой класс поддерживает сетевое соединение открытым?

#.net #networking #connection

#.net #сеть #подключение

Вопрос:

Я обращаюсь к базе данных поэтапно и удостоверяюсь, что я удаляю все свои DbConnection объекты и связанные с ними, когда я закончу с ними; однако, когда все сетевые операции выполнены и все должно быть закрыто, я все еще нахожу открытые сетевые подключения из приложения на netstat . Как мне узнать, экземпляр какого класса поддерживает эти соединения открытыми?

Ответ №1:

Даже если вы вызываете метод Close в своем соединении, физическое соединение не обязательно закрывается из-за объединения в пул соединений.

Комментарии:

1. Не могли бы вы объяснить объединение в пул соединений более подробно?

2. Здесь подробно объясняется объединение в пул: msdn.microsoft.com/en-us/library/8xx3tyca.aspx . Он оптимизирует доступ к данным, сохраняя физические соединения открытыми, поскольку их закрытие и открытие являются дорогостоящими процессами.