【发布时间】:2010-07-29 11:20:29
【问题描述】:
我正在连接到 IBM Websphere MQ 并且当前使用对象中的方法 receive() 一次读取一条消息:
javax.jms.Message;
有没有办法一次性从队列中检索多条消息?
非常感谢, G.
【问题讨论】:
我正在连接到 IBM Websphere MQ 并且当前使用对象中的方法 receive() 一次读取一条消息:
javax.jms.Message;
有没有办法一次性从队列中检索多条消息?
非常感谢, G.
【问题讨论】:
取决于您是否区分“读取”和“检索”。
从 JMS 的角度来看,不。 API 将在每次方法调用时返回一条消息。
从 WMQ 的角度来看,是的 - 前提是客户端和队列管理器都在 v7 并且消息是非持久的或正在浏览。在这种情况下,您可以在托管对象定义中或在运行时动态启用预读。队列管理器将从队列中流出多条消息,并在第一个消息被确认之前将它们传递给应用程序。有关这方面的更多信息,请参阅Using read ahead with WebSphere MQ classes for JMS。
【讨论】: