Naja, ich würde halt gern mehr über den Hintergrund erfahren. Wie genau die Kompo funktioniert. Ein Beispiel:
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18: 19: 20: 21: 22: 23: 24: 25: 26: 27: 28: 29: 30: 31:
| procedure TForm1.Button1Click(Sender: TObject); begin with IdTCPClient1 do begin Connect; try Sleep(3000); ShowMessage(ReadLn); WriteLn('Greetings back1'); ShowMessage(ReadLn); WriteLn('Greetings back1'); ShowMessage(ReadLn); WriteLn('Greetings back1'); finally Disconnect; end; end; end;
procedure TForm1.IdTCPServer1Execute(AThread: TIdPeerThread); begin with AThread.Connection do begin WriteLn('Hello from Basic Indy Server server1.'); ShowMessage(ReadLn); WriteLn('Hello from Basic Indy Server server2.'); ShowMessage(ReadLn); WriteLn('Hello from Basic Indy Server server3.'); ShowMessage(ReadLn); Disconnect; end; end; |
Wieso erhält der Client die Nachricht, obwohl ein Sleep eingebaut ist und wieso kann man einfach Empfangs- und Senderoutinen hintereinander schreiben und trotzdem Disconnected der Client nicht einfach wieder und alles kommt an der richtige Stelle an?
Wann genau wird das OnExecute-Event aufgerufen?