在REQ / REP套接字中,如果套接字向死(断开连接)节点发送请求,则消息不会被传递并停留在占用内存的消息队列中。如何清理这些未传递的消息(比方说,队列中的消息超过1分钟)?
谢谢!
答案 0 :(得分:3)
您可能需要设置可选参数ZMQ_LINGER
:
ZMQ_LINGER选项应设置 指定的逗留期限 插座。徘徊期决定了 有多长的待处理消息 尚未发送给同伴的人会流连忘返 在套接字关闭后在内存中 用zmq_close(3),进一步影响 套接字的终止 上下文与zmq_term(3)。
...正值将设置消息在队列中被阻止的最大时间。