Seite 1 von 1

[gelöst] TCP-Server, Verbindungsende ermitteln

Verfasst: Dienstag 16. September 2008, 14:51
von Gnushi
Hallo zusammen!

Ich bastel mit socket und select einen TCP-Server. Nun kann es immer mal vorkommen, dass ein Client die Verbindung verliert, z. B. wegen der DSL-Zwangstrennung oder so. Dieser Client soll sich wieder verbinden können.

Wie kann ich erkennen, ob ein Client die Verbindung getrennt hat?

Der dritte Parameter von select.select wird in dem Fall nicht gesetzt. Stattdessen habe ich auf einmal Daten von dem (nicht mehr verbundenden) Client anliegen, die ich aber nicht mit

Code: Alles auswählen

data = sock.recv(4096) 
ermitteln kann.

Liebe Grüße

GnuShi

Verfasst: Dienstag 16. September 2008, 16:57
von Trundle
Wenn ``sock.recv()`` einen leeren String zurückgibt, wurde die Verbindung geschlossen.

Verfasst: Mittwoch 17. September 2008, 09:26
von Gnushi
Trundle hat geschrieben:Wenn ``sock.recv()`` einen leeren String zurückgibt, wurde die Verbindung geschlossen.
Danke!

GnuShi