ZMQ_STREAM c++示例
时间: 2023-07-23 10:17:29 浏览: 216
zmq调用示例
3星 · 编辑精心推荐
以下是一个简单的ZMQ_STREAM的C++示例,它创建了一个ZMQ_STREAM套接字和一个TCP服务器端口,并将二者连接起来:
```c++
#include <zmq.hpp>
#include <iostream>
#include <string>
int main () {
zmq::context_t context(1);
zmq::socket_t server(context, ZMQ_STREAM);
server.bind("tcp://*:5555");
while (true) {
zmq::message_t request;
server.recv(&request);
std::string identity(static_cast<char*>(request.data()), request.size());
std::cout << "Received identity: " << identity << std::endl;
zmq::message_t reply(5);
snprintf(static_cast<char*>(reply.data()), reply.size(), "%s", "world");
server.send(static_cast<const void*>(identity.c_str()), identity.size(), ZMQ_SNDMORE);
server.send(reply);
}
return 0;
}
```
这个示例创建了一个ZMQ_STREAM套接字并将其绑定到TCP端口5555上。它在一个无限循环中等待来自客户端的请求,并向客户端发送一个"world"字符串作为回复。在发送回复时,它使用了ZMQ_SNDMORE标志来指示消息后面还有另一条消息(客户端的标识符)。
阅读全文