Guten Abend,
ich habe mal ein paar kleine Test mit einem simplen Server und Client gemacht.
Pro verbunden Client wird ein onExecute Thread eröffnet (sichtbar im Taskmanager),
wenn ich nun in der onExecute folgende Schleife habe:
Delphi-Quellcode:
procedure TForm1.myOnExecute(aContext: TIdContext);
begin
while aContext.Connection.Connected do
sleep(10);
end;
Wird nun die Verbindung vom Client beendet, beendet sich auch die onExecute Methode.
Der Thread wird beendet und gut ist.
Ein onDisconnect Methode habe ich nicht benutzt.
Was bei Dir schief läuft - keine Ahnung.
Grüße
Klaus