【发布时间】:2015-04-08 17:17:03
【问题描述】:
我以编程方式在我的应用程序中创建、启动、停止和关闭 Spring DefaultMessageListenerContainer,作为管理其生命周期的更重要服务的一部分。
我还将这些 DMLC 注册为 MBean,因此我可以从 JConsole 管理它们。
我无法“关闭”我的 DMLC,这似乎是因为在我停止 DMLC 后始终有一个“活动”调用程序侦听器不会消失。 我了解“receiveTimeout = -1”问题,我的是 5 秒(5000 毫秒)。所以,这不是问题。
我附上了我的 JConsole DLMC 属性的屏幕截图,“停止”操作被调用。您可以看到 Running = false,但“ActiveConsumerCount = 1”。因此,shutdown() 操作将挂起并且永远不会完全关闭我的容器。如何以编程方式完全停止和关闭 DMLC?
Spring 版本是 4.1.5 ActiveMQ 5.10.1
【问题讨论】:
标签: spring spring-jms