ZeroMQ:链接到消息关系



我正在使用ZMQ的Pub Sub模式。我知道可以将订阅者连接到任意数量的发布者,以便通过ZMQrecv-函数在一个套接字上接收所有发布者消息。然而,我也需要关于";链接";(例如。ipc:///tmp/link.ipc)我收到了当前收到的消息。

有没有办法从ZMQ消息中查询这些信息?

为了帮助理解我的意思,这里有一个小例子:

#include <zmq.hpp>
int main()
{
zmq::context_t ctx(1);
zmq::socket_t skt(ctx, ZMQ_SUB);
skt.setsockopt(ZMQ_SUBSCRIBE, nullptr, 0);
skt.connect("ipc:///tmp/link0.ipc");
skt.connect("ipc:///tmp/link1.ipc");
skt.connect("ipc:///tmp/link1.ipc");
zmq::message_t msg;
while (1)
{
if (skt.recv(msg))
{
// from which link is the message?
}
}
}

无法从zmq框架查询该信息。另一种选择是发布带有";部分";如果地址太长,则包含IP地址或ID。

最新更新