Einzelnen Beitrag anzeigen

mjustin

Registriert seit: 14. Apr 2008
3.006 Beiträge
 
Delphi 2009 Professional
 
#9

AW: Indy TCP Client/Server: spontan Nachricht an den Server senden?

  Alt 10. Jun 2013, 12:13
Was bedeutet "aufwendiger" in diesem Fall? Nur dass ich einen neuen Thread abspalten muss, der auf IOHandler des Sockets zugreift oder muss ich da unbedingt noch was beachten? Muss ich die Zugriffe auf IOHandler sychnronisieren? Oder kann ich auf die Streams einzeln zugreifen?
Der Hauptaufwand liegt darin, dass durch einen zweiten Thread (der nur für das Empfangen von Daten zuständig ist) bedingt wird, die Kommunikation mit dem Hauptthread threadsicher zu gestalten. Der erforderliche Aufwand hängt davon ab, wie komplex die notwendige Kommunikation zwischen dem Hauptthread und dem Lesethread ist.

Der IOHandler wird unsynchronisiert verwendet (zu synchronisieren würde den Vorteil des zweiten Threads wieder aufheben. Der schreibende Thread darf dann aber auch nie lesen - sollte das erforderlich sein, muss synchronisiert werden damit nicht zwei Threads lesen.
Michael Justin
  Mit Zitat antworten Zitat