Предотвращение исключения: «System.Net.Sockets.SocketException» в System.dll - PullRequest
0 голосов
/ 15 ноября 2018

Это вызывает у меня некоторое беспокойство некоторое время.У меня есть TcpClient, который работает в потоке и пытается подключиться к клиенту

                client = new TcpClient();
                client.Connect(m_Hostname, m_PortNum);

В случае сбоя функция Connect выдает SocketException, если не удается подключиться.Затем, скажем, 10 секунд, он пытается восстановить соединение.Целевой клиент в основном имеет прослушивающий сокет, который периодически активен, поэтому он будет пытаться переподключиться к целевому клиенту в течение всего жизненного цикла программы.

Проблема в том, что выдано исключение сообщения: 'System.Net.Sockets.SocketException' in System.dllвыплюнуть к отладчику каждые 10 секунд, каждый раз, когда он не может подключиться.Кажется, нет никакого реального способа предотвратить это.Я думал, что мог бы потенциально проверить, доступна ли целевая машина в первую очередь перед подключением, но я нигде не вижу этого.

Кажется плохим контролировать поток программ, используя исключения, но я не уверен в другом способе;в худшем случае я бы хотел предотвратить распечатку исключения в отладчике, потому что это вызывает ненужный спам.

...