Danke für die Antworten.
Mit Threads habe ich mich bis jetzt noch nicht beschäftigt. Dies ist auch mein erstes Projekt mit
TCP. Da werde ich mal suchen ob ich da schöne, leicht verständliche Anleitung finde.
Ein kleines, eigenständiges Beispiel ist hier:
https://mikejustin.wordpress.com/201...-push-example/
Der Einfachheit halber befinden sich Server und Client in derselben Anwendung. Der Client führt in seinem Thread einfach nur in einer Schleife TCPClient.IOHandler.ReadLn aus und schreibt - falls eine Nachricht eintrifft - deren Text in ein TMemo.
Delphi-Quellcode:
procedure TMyPushClientThread.Execute;
var
S: string;
begin
TCPClient.Connect;
while not Terminated do
begin
S := TCPClient.IOHandler.ReadLn(IndyTextEncoding_UTF8);
if not TCPClient.IOHandler.ReadLnTimedout then
begin
TThread.Queue(nil,
procedure
begin
FLog.Append(S);
end);
end;
end;
TCPClient.Disconnect;
end;