Ich weiß selber noch nicht so recht, ob das, was ich da vorhabe, so in der Form sinnvoll ist, aber ich erzähl erstmal, was ich vorhabe und stell dann einfach mal meine Frage dazu.

Also, ich habe hier ein Entwicklungsboard (FGPA mit integriertem PowerPC) auf dem eine Anwendung läuft, die mir per Ethernet fleißig Controllinginformationen an einen Host schickt. Für den Host möchte ich eine Anwendung mit GUI entwickeln, die diese Informationen (asynchron) Empfangen kann (also ähnlich einem Server) und auf der anderen Seite selber aber auch Einstellungen, die über das GUI getätigt wurden, an das Board schicken kann (Client). Auf dem Board habe ich schon eine threadbasierte Anwendung geschrieben. Die Anwendung auf dem Host möchte ich mit Qt entwickeln, weil ich mir davon eine Systemunabhängigkeit und eine größere Funktionsbibliothek verspreche. Außerdem eben auch die GUI Funktionalität.

Nun ist die Frage, wie das ganze mittels Qt zu realisieren ist. Die Sockets unter Qt sollen ja ereignisorientiert ablaufen (mittels Signals & Slots). Das würde ja prinzipiell bedeuten, dass es egal ist, ob meine Anwendung ein Client, Server oder beides gleichzeitig ist, weil auf das jeweilige Signal reagiert wird. Jetzt ist nur die Frage, so meine Annahmen stimmen, wie es da mit den Prioritäten vor sicht geht und wie gut man Server und Client voneinander Trennen kann. Bei threadbasierten Programmen würde ich je für den Client und den Server einen eigenen Socketthread erstellen, so dass der eine Thread immer schön lauscht und die Daten empfängt und der andere Socket bei Bedarf die neue Konfiguration an das Board schickt. Wie würde man sowas am sinnvollsten in Qt realisieren?