我们的应用程序中有一个 JMS 关闭队列,需要在特定事件上使用Spring上下文关闭运行节点。
为了正确关闭运行 ApplicationContext 而不在启动时再次处理此“关闭”消息,我们需要单独查杀线程,以确保该消息是在我们杀死 ApplicationContext 之前处理。
有没有办法避免额外杀死线程?
例如:配置 SpringIntegration 流程以在从队列中读取消息后立即标记消息读取,忽略它可能的处理失败。< / p>
答案 0 :(得分:1)
如果您将kill消息路由到ExecutorChannel
(或QueueChannel
),则该消息将被移交给另一个线程,并且该事务将立即提交。