2010-12-02 8 views
1

ich benutze in UDPClient in C#. Ich rufe die Empfangsfunktion auf, aber wenn ich die App benutze. das Programm tritt in die Ewigkeitsschleife ein. Warum ist dieses Phänomen? Vielleicht, weil auf diesem Port keine Daten verfügbar waren? Was kann ich tun?UDPClient in C#

schreibe ich den folgenden Code:

 UdpClient udpClient = new UdpClient(623); 
     try 
     { 
      udpClient.Connect("10.0.0.16", 623); 

      // Sends a message to the host to which you have connected. 
      Byte[] sendBytes = Encoding.ASCII.GetBytes("Is anybody there?"); 

      udpClient.Send(sendBytes, sendBytes.Length); 

      // Sends a message to a different host using optional hostname and port parameters. 
      UdpClient udpClientB = new UdpClient(); 
      udpClientB.Send(sendBytes, sendBytes.Length, "10.0.0.16", 623); 

      //IPEndPoint object will allow us to read datagrams sent from any source. 
      IPEndPoint RemoteIpEndPoint = new IPEndPoint(IPAddress.Any, 0); 

      // Blocks until a message returns on this socket from a remote host. 
      Byte[] receiveBytes = udpClient.Receive(ref RemoteIpEndPoint); 
      string returnData = Encoding.ASCII.GetString(receiveBytes); 

      // Uses the IPEndPoint object to determine which of these two hosts responded. 
      Console.WriteLine("This is the message you received " + 
             returnData.ToString()); 
      Console.WriteLine("This message was sent from " + 
             RemoteIpEndPoint.Address.ToString() + 
             " on their port number " + 
             RemoteIpEndPoint.Port.ToString()); 

      udpClient.Close(); 
      udpClientB.Close(); 

     } 
     catch (Exception e) 
     { 
      Console.WriteLine(e.ToString()); 
     } 

dank

+0

Alle Code R zu uns gehören! – jgauffin

+0

Kannst du mir erklären, was du meinst? – RRR

+0

@Daniel, Wenn Sie durch Null teilen, können Sie unendlich erreichen .. – jlafay

Antwort

Verwandte Themen