如何处理jmsTemplate.receive无响应情况

问题描述 投票:0回答:1

我正在使用

jmsTemplate.receive("queueName")
从服务总线队列接收数据。 我将其用作 API 请求。 我面临的一个问题是,如果队列中没有剩余消息需要处理,则它不会完成请求,甚至不会抛出错误。
jmsTemplate
有没有办法检查是否没有数据要处理,然后应该停止请求。

我尝试了很多方法,但没有一个有效。

jms azureservicebus jmstemplate jms-queue
1个回答
0
投票

在调用jmsTemplate.receive之前,您必须先调用

jmsTemplate.setReceiveTimeout

未设置时,它将永远等待下一条消息,如 Java 文档中所述:

默认为JmsDestinationAccessor.RECEIVE_TIMEOUT_INDEFINITE_WAIT,表示无超时阻塞接收。

© www.soinside.com 2019 - 2024. All rights reserved.