我连接了zeromq,"msg_in"已经排队了.如果在一段时间内没有新消息,则队列进入超时设置.如何设置超时.以下是核心代码
requestDict = {"id":111, "name":"test"}
zmqConn.mSocket.send(json.dumps(requestDict), flags=zmq.NOBLOCK)
msg_in = zmqConn.mSocket.recv()
Run Code Online (Sandbox Code Playgroud)
mec*_*ind 10
您应该使用Poller进行超时:
import zmq
p = zmq.Poller()
p.register(zmqConn.mSocket, zmq.POLLIN)
msgs = dict(p.poll(timeout))
if zmqConn.mSocket in msgs and msgs[zmqConn.mSocket] == zmq.POLLIN:
# recv there
else:
# timeout
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3763 次 |
| 最近记录: |