rabbitmq c++
时间: 2024-01-16 17:18:51 浏览: 104
RabbitMQ是一个开源的消息中间件,它实现了高级消息队列协议(AMQP)并提供了可靠的消息传递机制。在C++中,你可以使用RabbitMQ C++客户端来与RabbitMQ进行交互。
以下是一个使用RabbitMQ C++客户端发送和接收消息的示例:
```cpp
#include <iostream>
#include <string>
#include <SimpleAmqpClient/SimpleAmqpClient.h>
int main() {
std::string message = "Hello, RabbitMQ!";
std::string queueName = "my_queue";
// 创建RabbitMQ连接
AmqpClient::Channel::ptr_t connection = AmqpClient::Channel::Create("localhost");
// 声明队列
connection->DeclareQueue(queueName, false, true, false, false);
// 发布消息
connection->BasicPublish("", queueName, AmqpClient::BasicMessage::Create(message));
// 接收消息
AmqpClient::Envelope::ptr_t envelope = connection->BasicConsumeMessage(queueName);
std::string receivedMessage = envelope->Message()->Body();
// 输出接收到的消息
std::cout << "Received message: " << receivedMessage << std::endl;
return 0;
}
```
这个示例中,我们首先创建了一个RabbitMQ连接,然后声明了一个名为"my_queue"的队列。接下来,我们使用`BasicPublish`方法发布了一条消息到该队列中。最后,我们使用`BasicConsumeMessage`方法接收了该队列中的消息,并输出了接收到的消息内容。
请注意,为了运行这个示例,你需要在编译和链接时包含RabbitMQ C++客户端库,并将其与你的代码一起构建。
阅读全文