rabbitmq怎么停止_如何停止从选择性队列中消费消息 – RabbitMQ

是的,你可以使用channel.basicCancel(consumerTag);

编辑

例如:

String tag3 = channel.basicConsume("queue3", consumer);

channel.basicCancel(tag3)

在这里,您可以找到在5秒后取消订阅消费者的代码:

String tag1 = channel.basicConsume(myQueue, autoAck, consumer);

String tag2 = channel.basicConsume(myQueue2, autoAck, consumer);

executorService.execute(new Runnable() {

@Override

public void run() {

while (true) {

Delivery delivery;

try {

delivery = consumer.nextDelivery();

String message = new String(delivery.getBody());

System.out.println("Received: " + message);

} catch (Exception ex) {

Logger.getLogger(TestMng.class.getName()).log(Level.SEVERE, null, ex);

}

}

}

});

System.out.println("Consumers Ready");

try {

Thread.sleep(5000);

} catch (InterruptedException ex) {

Logger.getLogger(TestMng.class.getName()).log(Level.SEVERE, null, ex);

}

channel.basicCancel(tag2); /// here you remove only the Myqueue2

我希望它有用.


本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!

相关文章

立即
投稿

微信公众账号

微信扫一扫加关注

返回
顶部