Ich habe erfolgreich eine Client/Server-Anwendung mit IdTCPServer und IdTCPClient (10) angefangen.
Die Kommunikation funktioniert perfekt (Client fragt an, Server antwortet).
Nun möchte ich, dass der Server gelegentlich
von sich aus alle Clients über Neuigkeiten informiert. Die Clients entscheiden dann, ob und welche Daten sie abrufen.
Mit den Sockets war das ja recht einfach.
Wie macht man´s mit den Indys 10 am besten?
Diesen Schnippsel habe ich gefunden:
Delphi-Quellcode:
var
cList: TList;
Count: Integer;
begin
cList := IdTCPServer.Contexts.LockList;
try
for Count := 0 to cList.Count -1 do
with TIdContext(cList[Count]) do
Connection.IOHandler.WriteLn ('...');
finally
IdTCPServer.Contexts.UnlockList;
end;
end;
Ist das der beste Weg? Wie sieht die Cielt-Seite aus? Ohne Timer oder Thread wird es nicht gehen - oder?