python zeromq poll
以下のように実施されると、メッセージが受信されたときにのみメッセージ処理が実行される.
"q"
のメッセージを受け取ることができて、mainloopは終わります.socket.close()
が必要かどうか分かりません.import time
import zmq
context = zmq.Context()
socket = context.socket(zmq.SUB)
socket.connect("tcp://localhost:5555")
t0 = time.time()
socket.subscribe("")
poller = zmq.Poller()
poller.register(socket, zmq.POLLIN)
t_prev = time.time()
while True: # Wait for next request from client
t = time.time()
socks = dict(poller.poll(0.1))
if socket in socks:
msg = socket.recv().decode()
print(msg)
if msg == 'q':
break
t_prev = t
socket.close()
Reference
この問題について(python zeromq poll), 我々は、より多くの情報をここで見つけました https://velog.io/@kimhyunchul/python-zeromq-pollテキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol