ZeroMQ:link 到消息关系

ZeroMQ: link to message relation

我正在使用 ZMQ 的 Pub-Sub-Pattern。而且我知道可以将订阅者连接到任意数量的发布者,以便通过 ZMQ recv-function 通过一个套接字接收所有发布者消息。但是,我还需要有关“link”(例如 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 的“部分”发布多部分消息。