使用 zmq.hpp的例子
时间: 2023-08-07 18:05:48 浏览: 195
以下是一个使用`zmq.hpp`的简单例子:
```c++
#include <iostream>
#include <zmq.hpp>
int main() {
// 创建一个 ZeroMQ 上下文对象
zmq::context_t context(1);
// 创建一个 ZeroMQ REQ 套接字
zmq::socket_t socket(context, zmq::socket_type::req);
// 连接到服务器
socket.connect("tcp://localhost:5555");
// 发送消息
zmq::message_t request(5);
memcpy(request.data(), "hello", 5);
socket.send(request, zmq::send_flags::none);
// 等待响应
zmq::message_t reply;
socket.recv(reply, zmq::recv_flags::none);
// 输出响应
std::cout << "Received reply: " << std::string(static_cast<char*>(reply.data()), reply.size()) << std::endl;
return 0;
}
```
在这个例子中,我们首先创建了一个 ZeroMQ 上下文对象,然后创建了一个 REQ 套接字,最后连接到服务器。我们发送一个消息,并等待服务器的响应。当我们收到响应时,我们将其输出到控制台上。
注意,在使用`zmq.hpp`时,我们不需要手动释放 ZeroMQ 消息对象的内存,因为这些对象在销毁时会自动释放。
阅读全文