receive - blockt das proggi

Diskutiere receive - blockt das proggi im Programmierung Forum im Bereich Software Forum; Tach zusammen, Ich habe schonwieder eine Frage, bei der Herr Google mir nicht wirklich weiter helfen kann. Folgender code...
H

HStamme

Threadstarter
Mitglied seit
26.02.2008
Beiträge
6
Tach zusammen,
Ich habe schonwieder eine Frage, bei der Herr Google mir nicht wirklich weiter helfen kann.
Folgender code:
______________________________________________
Try

udpClient.Connect("192.168.10.234", 12345) 'Portnummer des Empfängers
udpClient.Send(nibble, 32)
Dim RemoteIpEndPoint As New IPEndPoint((234 + 256L * (10 + 256 * (168 + 256 * 192))), 12345) '(IPAddress.Any, 54321)
Dim receiveBytes As [Byte]()
receiveBytes = udpClient.Receive(RemoteIpEndPoint)
Dim returnData As String = Encoding.ASCII.GetString(receiveBytes)
Dim strcount As String = CStr(count)
udpClient.Close()
.......
_______________________________________________

in der Zeile:
_______________________________________________

receiveBytes = udpClient.Receive(RemoteIpEndPoint)
_______________________________________________

Blockiert mein Programm, der Versuch das über ein extra Try abzufangen bringt keinen Erfolg. Wie kann ich verhindern, dass das Programm blockiert, wenn keine Nachricht übers ethernet kommt?
Der andere Rechner nutzt den gleichen Code, nur ist da die IP geändert.(logisch)
Also senden wir von Client zu Client.
Bei gleichzeitigem starten des Programms funktioniert die Verbindung auch, aber wenn einer der Rechner nicht mehr sendet, dann friert das andere Programm ein.
Bin für jede Hilfe dankbar!

MfG HStamme

PS.: Ich nutze VB 2005 E-E
 
DiableNoir

DiableNoir

Mitglied seit
18.01.2004
Beiträge
6.069
Eigentlich hättest du nicht deswegen einen extra Thread aufmachen müssen. ;)

Also eigentlich ist es klar warum blockiert wird, denn der Thread deiner Anwendung wird solange angehalten bis Daten reinkommen.

Du hast jetzt zwei Möglichkeiten: Entweder du lagerst deinen Netzwercode in einen extra Thread aus, oder du machst ihn asyncron. Dazu musst du BeginReceive anstatt Receive verwenden.

Dann läuft deine Anwendung normal, auch wenn sie auf ein Netzwerksignal wartet. Die Gegenstelle muss natürlich solange senden, bis sie zB selbst ein OK-Signal vom Empfänger erhält.

BTW: Du würdest dir einiges an Arbeit ersparen wenn du nicht UDP sondern TCP verwenden würdest. Da kannst du dir sicher sein, dass Nachrichten angekommen sind und brauchst das nicht Anwendungsspezifisch ausprogrammieren. ;)
 
Thema:

receive - blockt das proggi

receive - blockt das proggi - Ähnliche Themen

  • Sky Q Mini Receiver einrichten mit dem Internet per WLAN oder Netzwerkkabel verbinden

    Sky Q Mini Receiver einrichten mit dem Internet per WLAN oder Netzwerkkabel verbinden: Der Sky Q Mini Receiver ist eine ideale Ergänzung für alle die schon ein Sky Q Abo mit dem Sky Q Receiver haben und das Ganze auch in andere...
  • Receiver über Bluetooth verbinden und Sound abspielen

    Receiver über Bluetooth verbinden und Sound abspielen: Hallo, über Bluetooth habe ich einen PC (Windows10) mit einem Receiver verbunden (Yamaha, MusicCast-fähig). Die Verbindung ist etabliert, das...
  • Sky Q Receiver: Kids Mode und Eco Plus Mode aktivieren - Diese neuen Modi gibt es für den Receiver

    Sky Q Receiver: Kids Mode und Eco Plus Mode aktivieren - Diese neuen Modi gibt es für den Receiver: Der Sky Q Receiver bekommt ein größeres Update spendiert und mit diesem kommen ein paar neue Apps und vor allem zwei neue und praktische Modi auf...
  • Sky Q Receiver: Apps finden, starten oder beenden - So einfach geht es

    Sky Q Receiver: Apps finden, starten oder beenden - So einfach geht es: So mancher würde sich zwar wünschen, dass man neue Apps auf einem Sky Q Receiver installieren kann, aber mit denen die es bereits gibt kann man...
  • Sky Q Receiver Bildschirmsymbole schnell erklärt - Was bedeuten die Bildschirmsymbole bei Sky Q?

    Sky Q Receiver Bildschirmsymbole schnell erklärt - Was bedeuten die Bildschirmsymbole bei Sky Q?: Wer den Sky Q Receiver nutzt hat bestimmt schon diverse Symbole auf dem Bildschirm gesehen und nicht immer weiß man direkt was diese bedeuten. In...
  • Ähnliche Themen

    Oben