Hi,
ich habe ein kleines Problem wo ich nicht draufkomme.
Ich habe einen Thread, der einen TIdTCPServer im constructor erstellt.
Wenn der Thread terminiert wird, wird der TIdTCPServer.Active auf False gesetzt und danach sollte TIdTCPServer.Free ausgeführt werden.
Wenn nun kein Client verbunden war geht das ohne Probleme.
Wenn aber ein Client verbunden war/ist bleibt es bei TIdTCPServer.Active := False stehen.
Delphi-Quellcode:
procedure TExtra_Thread.Execute();
var
begin
while (
not Terminated)
do
begin
// do some things
Sleep(1);
end;
// while (not Terminated) do
// destroy TCP server:
TCP_Server.Active := False;
TCP_Server.Free;
end;
Komme nicht weiter!?