Nein, leider nicht so einfach.
'Waitfor' wartet ja nur, bis die Methode Execute beendet ist. Nur die darf nicht beendet werden, solange nicht Terminated = True ist.
Hier mal der Problem Code:
Delphi-Quellcode:
procedure Tossrv.Execute;
begin
server.active := true;
repeat
if not server.Active then terminate;
until Terminated;
end;
Ist ja nicht wirklich schön. Saugt CPU - Time ohne Ende. Unter Windows wüsste ich rat, aber als Konsolenanwendung ?!