2016-05-28 5 views
0

Ich bin neu in Python, Socket, Multithreading und asynchrone Programmierung. Ich frage mich, was der beste Ansatz ist, um einen Server zu implementieren, der Daten zwischen einem Client wie einem Unity3D-Spiel empfängt und sendet und diese Daten in einer GUI mit Python GTK ausgibt, während diese Daten in Echtzeit in eine Textdatei geschrieben werden. Um die Sache etwas komplizierter zu machen, stammen die Daten von einem Eyetracker, der Blickdaten mit einer Geschwindigkeit von 300 ms erhält. Ist es angesichts dieser Anforderungen besser, Threads oder Async zu verwenden? Außerdem, sollte ich einen UDP- oder TCP-Server zum Austausch der Daten erstellen?Multithreading oder asynchron für Python GTK/Socket Server/Daten schreiben

Wenn weitere Informationen benötigt werden, lassen Sie es mich bitte wissen. Vielen Dank.

Antwort

0

Verwenden Sie TCP. UDP werden hauptsächlich für Dinge wie Video/Audio-Streaming verwendet. Das ist hier nicht der Fall.

Wie für async vs thread in Unity, würde ich vorschlagen, dass Sie mit Thread gehen. Es ist einfacher und Sie sind sicher, dass Ihr Netzwerkcode Unity nicht in irgendeiner Weise verlangsamt.

Unity3D Spiel und zeichnen sich diese Daten in einer GUI mit Python GTK

Wenn Sie Daten empfangen von Eye-Tracker, sollten Sie in der Lage sein, die Daten mit der Einheit plotten. Wenn Sie Python verwenden möchten, ist es weiterhin möglich, eine Verbindung zwischen Unity und Ihrer Python-App herzustellen.