C# Исключение отправки сокета UDP при отсутствии получателя на локальном хосте - PullRequest
0 голосов
/ 06 августа 2020

У меня есть приложение, которое открывает сокет UDP, в настоящее время на локальном хосте, для отладки с помощью моделирования. Когда приложение отправляет, а получателя нет, в фоновом режиме возникает исключение. Выдается исключение:

'System. Net .Sockets.SocketException' в System.dll

Если слушатель включен, исключение будет не . Это не останавливает мое приложение, но я хотел бы обработать это исключение. Есть идеи как? Я попытался обернуть часть отправки, но, похоже, это не помогает.

Создание сокета:

    private void InitUdpClient()
    {
        try
        {
            if (null != udpClient)
                udpClient.Close();
        }
        catch (Exception)
        { 
          //log errors to file
        }

        try
        {
            RemoteIpEndPoint = new IPEndPoint(IPAddress.Any, 0);
            udpClient = new UdpClient(rxPortNum);
        }
        catch (Exception)
        {
            //log errors to file               
        }

Функция отправки:

 public void Send(byte[] dataToSend)
    {
        try
        {
            udpClient.Send(dataToSend, dataToSend.Length, ipAddress, txPortNum);
        }
        catch (Exception e)
        {
            //log errors to file
        }
    }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...