首页 > 解决方案 > 一段时间内停止对rabbitmq的消息消费

问题描述

调用 SimpleMessageListenerContainer 类的 stop 方法就是关闭通道(“Closing channel for unresponsive consumer”)。但我不想关闭频道。我试图在一段时间内停止对消息的消费,一段时间后我想恢复对消息的消费。谁能给我建议我该怎么做?

标签: javaspring-bootrabbitmqmessage-queuespring-rabbit

解决方案


听起来您可能正在从侦听器线程中停止容器 - 这会导致死锁。

在另一个线程上调用 stop。

someTaskExecutor.execute(() -> container.stop());

这将释放侦听器线程。


推荐阅读