我正在连接到IBM Websphere MQ,并且当前正使用对象中的方法receive()一次读取一条消息:
javax.jms.Message;
有没有办法一次性从队列中检索多条消息?
非常感谢, -G。
答案 0 :(得分:3)
取决于您是否区分“阅读”和“检索”。
从JMS的角度来看,没有。 API将为每个方法调用返回一条消息。
从WMQ的角度来看,是的 - 如果客户端和队列管理器都在v7,并且消息是非持久性的或正在浏览。在这种情况下,您可以在托管对象定义中启用预读,也可以在运行时动态启用预读。队列管理器将从队列中流式传输多条消息,并在确认第一条消息之前将它们传递给应用程序。有关详细信息,请参阅Using read ahead with WebSphere MQ classes for JMS。