UDP recieve Timeout
-
Hallo zusammen,
ich bin gerade dabei einen UDP-Empfänger zu programmieren.
Das empfangen funktioniert auch so wie es soll nur wenn keine Antwort zurück kommt bleibt das Program hängen..
Gibt es eine Möglichkeit einen Timeout einzubauen?Quellcode Ausschnitt:
UdpClient^ UDPClient_recv = gcnew UdpClient(25352); IPEndPoint^ RemoteIpEndPoint = gcnew IPEndPoint( IPAddress::Any,0 ); array<Byte>^receiveBytes = UDPClient_recv->Receive( RemoteIpEndPoint ); String^ returnData = Encoding::ASCII->GetString( receiveBytes ); txbrecvData->Text = returnData->ToString(); txbRemoteIP->Text = RemoteIpEndPoint->Address->ToString() + ":" + RemoteIpEndPoint->Port.ToString(); UDPClient_recv->Close();
Mit freundlichen Grüßen
dixxi
-
Versuchs mal über das Socket vom UdpClient (Client Property). Da gibts ein ReceiveTimeout Property.
http://msdn.microsoft.com/en-us/library/system.net.sockets.udpclient.aspx
http://msdn.microsoft.com/en-us/library/system.net.sockets.socket.receivetimeout.aspxAllerdings ist soweit ich weiss nach ausgelöstem Timeout das Socket nicht mehr gültig. Ich hoffe das ist das was Du brauchst.
-
Alles klar Danke ich versuch es mal