ich implementiere derzeit ein VR-System, welches als Konfigurationssprache Python verwendet. Prinzipiell ermöglicht es dem User recht einfach auf interne Funktionalitäten zuzgreifen und auch das System recht schnell zu erweitern. Zusätzlich ist das Sprache einfach elegant (mal abgesehen von der Defintion eines Konstruktors . Besonders viel Erfahrung mit Python habe ich allerdings noch nicht, ich "lebe" von kleinen Snippets und ab und an in die Doku bei python.org reinschauen (bin eher mit der Programmierung des Systems selbst beschäftigt, was in C++ geschrieben ist).
Jetzt soll ich das System via Multicast mit einem Simulationssystem koppeln. Den passenden Client habe ich auch schon geschrieben:
Code: Alles auswählen
import socket
import time
PORT = 8420
GROUP = '224.245.211.234'
sock = socket.socket(socket.AF_INET , socket.SOCK_DGRAM)
sock.setsockopt(socket.SOL_SOCKET , socket.SO_REUSEADDR , 1)
sock.bind((socket.gethostname(), PORT))
sock.setsockopt(socket.SOL_IP , socket.IP_ADD_MEMBERSHIP, socket.inet_aton(GROUP) + socket.inet_aton('') )
#sock.setblocking(false)
while 1:
raw, sender = sock.recvfrom(1000)
print raw
Jetzt die alles entscheidende Frage. Wie bekomme ich diesen Code nonblocking hin ?
Viele Grüsse
Matthias
PS: Wenn es interessiert, man kann sich eine Demoversion unter http://www.dmu-vr-solutions.de herunterladen, es sind einige kleinere Python-Examples mit dabei.