0

我正在尝试重用线程并UdpClient在同一端口上发送和接收,但是当我调用方法时..

private void RecivedCallback(IAsyncResult ar)
{
    try
    {
        if (ar == cuurentsynResult)
        {
            UdpClient c = (UdpClient)((UdpState)(ar.AsyncState)).c;
            IPEndPoint e = (IPEndPoint)((UdpState)(ar.AsyncState)).e;
            Byte[] buffer = c.EndReceive(ar, ref e);
            if (buffer.Length > 0)
                System.Console.WriteLine(System.Text.Encoding.UTF8.GetString(buffer));
            UdpState s = new UdpState(e, c);
            cuurentsynResult = udpclient.BeginReceive(new AsyncCallback(RecivedCallback), s);                    
        }
    }
    catch (Exception ex)
    {
        string str = ex.Message;
    }
}

我面临的例外是..远程主机强行关闭了现有连接,所以我该如何解决这个问题。请发送您的意见或答案

索努·兰詹

4

1 回答 1

1

在 UDP 套接字上,该错误可能意味着您收到了 Port Unreachable ICMP 消息以响应您发送的数据报。

您如何从中恢复将是特定于应用程序的。

于 2013-10-22T22:15:19.117 回答