Announcement

Collapse
No announcement yet.

Shutdown des TCP-Servers (indy 10)

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • Shutdown des TCP-Servers (indy 10)

    Ich habe Probleme mit dem Demo des TCP-Servers. Bei angemeldeten Clients (einer reicht) bleibt das Programm bei der Betätigung des Button zur Deaktivierung (Server.Active := false) hängen. Auch eine Einbettung von Disconnect der Clients (Client-Liste) in der Funktion "BeforStop" führt nicht zum erfolgt (selbst mit anschließenden Application.ProcessMessage und Sleep(WaitTime)).

    Hat das bei den Entwicklern der Indy-Komponenten denn keiner getestet ? Das ist doch wohl die Minimalvoraussetzung bei einem Server - oder ??

  • #2
    Hallo Udo,
    hatte letzens ein ähnliches Problem, hab's mittlerweile aber stabil hingekriegt.
    Leider reicht die Active := False Zuweisung nicht aus, um den Server "stabil" zu schließen.

    Es gibt ne Funktion StopListening() der erstmal alle Connects von neuen Clients blockiert, danach die Clientliste locken, alle Clients durchgehen und disconnecten. Dann müsste das Active := false funktionieren.

    Ggf. musst du auch aufpassen, wenn du das OnDisconnect Event verwendest. Dies wird definitiv ausgeführt - hier bin mich mir selbst nicht ganz sicher ob es zu Threading-Problemen kommen kann, wenn ich im OnDisconnect auf die VLC zugreife. Immerhin müsste ja jeder Clientthread ein Disconnect-Event werfen, welches dann in seinem Thread ausgeführt wird. Weiß hier jemand mehr?

    Comment

    Working...
    X