The consumer receive message only once. The code is as follows:
Channel::ptr_t channel = Channel::Create();
string QUEUE_NAME = "hello";
cout << " [*] Waiting for messages. To exit press CTRL+C" << endl;
string consumer = channel->BasicConsume(QUEUE_NAME, "", true, false);
while (1){
BasicMessage::ptr_t msg_out = channel->BasicConsumeMessage(consumer)->Message();
cout << "Message text: " << msg_out->Body() << endl;
}
I 'm sure the publisher is fine. Because when I use consumer written by python, it can receive every message send by the publisher. But when I use consumer in C++, it does not work. The consumer just receive the first messages. Why it happens? Can anyone help me? Thank you very much!