while (true)
{
BasicDeliverEventArgs e = (BasicDeliverEventArgs)Consumer.Queue.Dequeue();
IBasicProperties properties = e.BasicProperties;
byte[] body = e.Body;
Console.WriteLine("Recieved Message : " + Encoding.UTF8.GetString(body));
ch.BasicAck(e.DeliveryTag, false);
}
这就是我们在通过订阅检索消息时所做的。我们使用 While 循环,因为我们希望消费者连续收听。如果我想让它基于偶数怎么办?那就是当新消息到达队列时那时只有消费者应该使用消息..或任何此类类似事件..
最佳答案
将 RabbitMQ.Client.Events.EventingBasicConsumer
用于事件消费者而不是阻塞消费者。
关于c# - RabbitMQ C# API 基于事件的消息消费,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3446426/