Hi,
da
Indy Blocking Sockets benutzt bekommt
Indy nicht direkt mit wenn die Verbindung aus welchem Grunde auch immer verliert.
Sobald Du allerdings in die Verbindung "schreibst" wird das nicht vorhanden sein der Verbindung festgestellt.
Deshalb solltest Du "Dein Protokoll" so aufbauen, das von Zeit zu Zeit ein "NOOP" (No operation) gesendet wird,
was der Server dann empfängt und nicht verarbeitet.
Bei Indy10 gibt es noch einfachere Methoden, zuerst :
Delphi-Quellcode:
CheckDataForSorce(500); // <---- Millisek.
if not InputBufferEmpty then
// ...
Weiß aber nicht mehr ob das schon bei Indy9 so verfügbar ist.
Greetz Data
Der Horizont vieler Menschen ist ein Kreis mit Radius Null, und das nennen sie ihren Standpunkt.