Das Thread-Beispiel aus Stackoverflow ist eigentlich recht übersichtlich. Versuch es doch einfach mal damit und melde Dich, wenn Du Fragen hast.
Wenn Du ein aktuelles Delphi verwendet, würde es noch etwas einfacher gehen mit der Parallel Programming Library. Ich meine, das gab es ab Delphi XE7.
In etwa so (nicht getestet!)
Delphi-Quellcode:
uses System.Threading;
...
Procedure TForm1.Readdata;
var
aTask: ITask;
begin
aTask := TTask.Create(
procedure
var s: string;
begin
while true do
begin
s := TCPClient.IOHandler.ReadLn();
TThread.Synchronize(nil,
procedure
begin
Memo1.lines.add(s);
end);
end;
end);
aTask.Start;
end;
Da muss natürlich noch eine Abbruchbedingung rein statt dem "while true".