ZeroMQ timeout a REQ/REP connection

来源:互联网 发布:mac chown usr local 编辑:程序博客网 时间:2024/04/29 02:31
import sysimport zmq# None of these operations will block, regardless of peer:context = zmq.Context()socket = context.socket(zmq.REQ)socket.setsockopt(zmq.LINGER, 0)socket.connect("tcp://127.0.0.1:12346")socket.send_json({"msg": "testmsg"}) # send can block on other socket types, so keep track# use poll for timeouts:poller = zmq.Poller()poller.register(socket, zmq.POLLIN)if poller.poll(10*1000): # 10s timeout in milliseconds    msg = socket.recv_json()else:    raise IOError("Timeout processing auth request")# these are not necessary, but still good practice:socket.close()context.term()sys.exit(0)


原创粉丝点击