我正在使用IBM Websphere MQ.我有队列管理器和队列名称.现在,我想检查队列中是否有任何消息?
我之前没有这方面的工作.请求帮助
如果您需要更多信息,请告诉我们!
谢谢
下面的代码是.NET/amqmdnet - 但您可以尝试在此期间转换它,直到Java开发人员看到您的帖子.
要查看队列中是否有消息,而不实际将其从队列中取出,请在队列上使用MQC.MQOO_BROWSE并IBM.WMQ.MQC.MQGMO_BROWSE_FIRST作为选项MQRC_NO_MSG_AVAILABLE如果队列为空,您将获得该消息.
MQMessage queueMessage = new MQMessage();
MQQueueManager queueManager = new MQQueueManager(qmName, channelName, connName);
MQQueuequeue = queueManager.AccessQueue(qName,
MQC.MQOO_BROWSE + MQC.MQOO_FAIL_IF_QUIESCING);
MQGetMessageOptions opt = new MQGetMessageOptions();
opt.Options = IBM.WMQ.MQC.MQGMO_BROWSE_FIRST;
queueMessage.CorrelationId = IBM.WMQ.MQC.MQMI_NONE;
queueMessage.MessageId = IBM.WMQ.MQC.MQMI_NONE;
queue.Get(queueMessage, opt);
String sMessage = queueMessage.ReadString(queueMessage.DataLength);
Run Code Online (Sandbox Code Playgroud)
要查看下一条消息的使用IBM.WMQ.MQC.MQGMO_BROWSE_NEXT;
要实际读取队列中的消息,请使用MQC.MQOO_INPUT_SHAREDAccessQueue.
| 归档时间: |
|
| 查看次数: |
8307 次 |
| 最近记录: |