title image


Smiley Wie feststellen, ob ein NetworkStream von der Gegenseite geschlossen wurde?
Ich lasse zwei Programme über NetworkStreams kommunizieren.



// Code des Empfängers

TcpClient empfaenger = SynchronTL.AcceptTcpClient();

LocalStream = empfaenger.GetStream();

while(true) {

i = LocalStream.Read(bytes, 0, bytes.Length);

...

}





Dabei lese ich beim Empfänger fortwährend die Bytes aus dem Stream.

Wenn ich aber beim Sender den NetworkStream schliesse und dispose, wartet der Empfänger immer weiter.

Ich kann auch in keinem Status von dem NetworkStream auslesen, dass die Verbindung geschlossen wurde.

Also warte ich weiter, blockiere damit aber den Port. Und wenn der Sender wieder senden will, kann er sich nicht verbinden. Erst wenn ich den Empfänger neustarte...



Wie kann ich nun feststellen, dass der NetworkStream geschlossen wurde?

Oder gibt es eine bessere Lösung?



Dank+Gruß

geschrieben von

Login

E-Mail:
  

Passwort:
  

Beitrag anfügen

Symbol:
 
 
 
 
 
 
 
 
 
 
 
 
 

Überschrift: