【发布时间】:2015-04-28 15:27:38
【问题描述】:
我有一个 ZMQ_PUB 套接字以 ~50Hz 的频率发送消息。一个目的地需要对每条消息做出反应,因此它有一个标准的 ZMQ_SUB 套接字,带有一个 while(true) 循环检查新消息。第二个目的地应该每秒只对“最近的”消息做出一次反应。也就是说,我的第二个目的地需要进行二次抽样。
对于第二个目的地,我相信我想要一个基于时间的循环,它以我想要的速率 (1Hz) 调用,recv() 接收最新消息,丢弃其余消息。我相信这是通过订阅者上的 ZMQ_HWM 完成的。是否需要在某处设置其他选项?
我是否需要担心具有不同 HWM 的不同订阅者?出版商会生气吗?遗憾的是 ZMQ_RATE 仅适用于多播套接字。
有没有最好的方法来完成我正在尝试的事情?
zmq v3.2.4
【问题讨论】:
标签: sockets zeromq publish-subscribe sample