Hallo allerseits,
vor einiger Zeit habe ich schon einmal ein Thema mit ähnlicher Überschrift begonnen, allerdings keine Antwort bekommen. Mittlerweile habe ich etwas mehr herausgefunden, habe aber immer noch ein grundlegenden Verständnisproblem:
Wenn ich also den ServerSocket auf stThreadBlocking setze, dann wird für jeden Client, der Verbindung aufnimmt, ein eigener Thread erzeugt, soweit ist das schonmal klar.
Wenn ich nun das Ereignis OnThreadStart nutze, um an den Clientbeispielsweise einen Text zurück zu senden
Code:
Thread.ClientSocket.SendText('Ich bin ein Thread');
dann funktioniert das auch noch wunderbar. Nun muss ich jedoch auch die Möglichkeit haben, Antworten vom Client entsprechend zu empfangen und zu verarbeiten, bzw. wiederum darauf reagieren.
Im Handbuch (Seite 30-13) steht dazu:
Zitat:
TServerClientThread-Objekte simulieren die Ereignisse OnClientRead und OnClientWrite, die bei nicht-blockierenden Verbindungen auftreten. Diese Ereignisse treten jedoch am empfangenden Socket auf, an dem der Thread nicht lokal ausgeführt wird.
Ich muss zugeben, dass ich nicht ansatzweise verstehe, was mir der zweite Satz sagen will!
Wie und wo reagiere ich nun also auf eingehende Textmeldungen vom Client???