Es gibt wahrscheinlich etwas sehr kleines, dass ich vermisse, aber ich bin nicht in der Lage, ein einfaches Pub-Sub-Beispiel in Python mit dem offiziellen Pyzmq-Paket (https://github.com/zeromq/pyzmq) zu arbeiten.ZeroMQ PubSub funktioniert nicht mit Pyzmq
Ich benutze die neueste ZeroMQ Stable Version 4.0.3 und bin in der Lage, ein einfaches Beispiel zu bekommen, das recht einfach in c funktioniert. Ich habe sowohl einen Mac als auch einen Ubuntu-Rechner ausprobiert. Ich freue mich auf jede Eingabe auf diese;)
Hier ist mein Code:
sub.py
import zmq
ctx = zmq.Context()
s = ctx.socket(zmq.SUB)
s.connect("tcp://127.0.0.1:5567")
s.setsockopt(zmq.SUBSCRIBE,'')
while True:
print 'waiting...'
msg = s.recv()
print 'received:', msg
pub.py
import zmq
ctx = zmq.Context()
s = ctx.socket(zmq.PUB)
s.bind("tcp://*:5567")
for i in range(100):
s.send("test")
Und das war es. Vielen Dank! – Stephen
Warum funktioniert die C-Version dann, wie @Stephen sagt? Und gibt es eine Möglichkeit, diesen Hack loszuwerden, während die Möglichkeit beibehalten wird, viele Publisher mit einem Abonnenten zu verbinden? (leider keine 'zmq.PAIR') – Pastafarianist
Ziemlich hässliche Lösung :( – DataGreed