0
저는 ZMQ을 처음 사용하고 있으며 구독 등록 패턴에 대한 자습서를 이미 작성했습니다. 하지만 제 신청서에는 그다지 적용되지 않습니다. 두 가지 유형의 응용 프로그램이 있습니다. 응용 프로그램은 네트워크를 통해 여러 "응용 프로그램 2"에 대한 연결을 만들고 데이터를 보낼 수 있습니다.ZMQ 게시/구독 패턴 게시자가 구독자에게 연결
게시/구독 패턴을 사용하여 구현하려고 시도했지만 구독자가 게시자에 연결하는 대신 게시자가 구독자에 연결합니다.
출판사 :
zmq::context_t context(1);
zmq::socket_t socket(context, ZMQ_PUB);
socket.connect("tcp://localhost:5555");
std::string text = "Hello World";
zmq::message_t message(text.size());
memcpy(message.data(), text.c_str(), text.size());
socket.send(message);
구독자 :
zmq::context_t context(1);
zmq::socket_t socket(context, ZMQ_SUB);
socket.bind("tcp://*:5555");
const char* filter = "Hello ";
socket.setsockopt(ZMQ_SUBSCRIBE, filter, strlen(filter));
zmq::message_t request;
socket.recv(&request);
std::string message = std::string(static_cast<char*>(request.data()), request.size());
std::cout << "Message received!" << std::endl;
std::cout << message << std::endl;
게시자 에러없이 finnishes하지만, 가입자가 RECV 붙어있다(). 예 (구독자 우선)