我正在使用 Apache Qpid,我查看了示例,但找不到任何地方如何配置接收器,使其不会关闭连接并检查队列中是否有任何新消息.
最佳答案
您似乎正在使用 Qpid JMS 客户端。它的非常基本的示例,实际上只是显示了 JMS 中可用的各种组件,而不是代表性应用程序(因为这完全取决于您想要做什么),有一个简单的接收器,设置为执行同步 receive() 调用超时,以便等待新消息(由示例的其他位发送)的时间,如果在超时内没有消息到达,则意味着事情已完成,然后退出。
如果您想等待消息,您有多种选择,例如重复调用 receive 而不是像示例那样退出,以较大的超时调用 receive 以避免超时如此之快,或者甚至在没有超时的情况下调用 receive所有这些都使得它在返回之前等待下一条消息所需的时间。或者,您可以为消费者注册一个异步 MessageListener,以便在消息到达时调用该监听器。
您可以查阅任何 JMS 教程以获取有关这些概念的更多详细信息。
关于java - qpid如何配置接收器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40087143/