Хех, я не могу поверить, что я забыл все, что я узнал в сетевом классе ...

о-нибудь есть опыт с этим? У меня есть скрученное приложение. Клиенты подключаются к серверу. Я добавил функцию, так что если клиент подключается к серверу, но клиент с этого IP-адреса уже запущен, он отключает нового клиента.

Время от времени я выключал клиентский компьютер (или, если быть точным, виртуальную машину), не выключая вручную программу Python. Когда я делаю это, время от времени, но довольно часто, сервер не обнаруживает никакого отключения. Когда компьютер возвращается и пытается восстановить соединение, сервер настаивает на том, что соединение с этим IP уже есть. Единственное решение, которое я нашел, это перезагрузить сервер.

Могут ли быть странные сетевые вещи без прохождения разъединения? Витая ошибка?

Я на 99% уверен, что это не ошибка в моем коде для обработки разъединений. Мой код настроен так, чтоconnectionLost вызывается всякий раз, когда соединение теряется, включая большинство случаев выключения компьютера, и оно либо регистрирует строку, сообщающую о том, что отключено, либо выдает исключение, если происходит что-то странное. Ни одна из этих вещей не появилась в журнале.

Ответы на вопрос(2)

Ваш ответ на вопрос