Ошибка транспортного уровня: SQL Server потерял соединение (принудительно закрыто удаленным хостом) после режима сна Windows - PullRequest
0 голосов
/ 12 декабря 2011

Я создал приложение VB .NET, которое имеет соединение с SQL Server. Во время работы приложения ОС Windows переходит в спящий режим. После того, как я снова включил машину, я обнаружил эту ошибку:

Произошла ошибка транспортного уровня при отправке запроса на сервер. (поставщик: поставщик TCP, ошибка: 0 - существующее соединение было принудительно закрыто удаленным хостом.)

Состояние соединения все еще ОТКРЫТО, но оно больше не работает. Я прочитал некоторые ресурсы из MSDN, в которых сказано, что SPID прекращен (?).

Возможно ли снова установить соединение после сна ОС Windows?

Если нет, я могу решить ЗАКОНЧИТЬ работающее приложение ..

1 Ответ

3 голосов
/ 12 декабря 2011

SQL Server обнаружил, что клиент не находился в спящем режиме, поэтому закрыл сеанс, снял блокировки, откатил и т. Д.

Ваше приложение считает «открытым», потому что оно просто запоминает свое состояние.

Вы должны открывать соединения по мере необходимости и закрывать их впоследствии, чтобы не оказаться в таком состоянии.У открытия / закрытия есть небольшие издержки из-за пула соединений

...