Guten Morgen.
Ich hab ein kleines Programm, welches eine
TCP-Verbindung mit nem lokalen Dienst herstellt um mit diesem Dienst zu kommunizieren.
Nun hängt sich das Programm blöderweise ständig beim herunterfahren auf, was natürllich nicht sein soll, da es dadurch den Shutdown blockiert, der automatisch nachts nach einer Sicherung stattfinden soll.
Im Programm selbst verwende ich QueryEndSession und QuerySession, da das Programm auf Befehl den Shutdown blockieren soll.
Dieser Befehl kommt momentan nie, also kann man das eigentlich ignorieren.
Allerdings habe ich festgestellt, dass QueryEndSession erfolgreich abgearbeitet, EndSession in manchen Fällen jedoch nie erreicht wird.
Stellt sich mir die Frage: Was kommt zwischen QueryEndSession und EndSession?
Wo muss ich nach dem Fehler suchen?
Ich verwende
Indy TCP Komponenten, Threads, Timer.
In der QueryEndSession-Methode mache ich nichts ausser abzufragen, ob blockiert werden soll oder nicht, sollte man da auch
TCP-Verbindungen etc beenden?
Hab das bisher immer im finalization Abschnitt gemacht.