gpt4 book ai didi

C#MQ Api如何在空队列的情况下获取消息而不会出现异常

转载 作者:太空狗 更新时间:2023-10-30 00:11:19 26 4
gpt4 key购买 nike

我必须定期检查 Websphere MQ 队列中的消息。除了尝试获取消息并处理 2033 原因代码(即 NO_MSG_AVAILABLE)之外,我还没有找到更好的方法:

try
{
// ...
inQueue.Get(message);
}
catch (MQException exception)
{
if (exception.ReasonCode != 2033)
throw;
}

有没有更好的方法从队列中获取消息?我认为可能有一些我不知道的 openOptions 标志,当没有可用消息时不会抛出异常,而是返回 null。

最佳答案

可以通过三种方式来避免或减少这种轮询机制。在这里,它们是优雅的(越高越好):

  1. 具有等待间隔 UNLIMITED 和 MQGMO_FAIL_IF_QUIESCING 的 MQGET
  2. 让您的应用程序由 MQServer 触发
  3. 回调函数 - 双方都是 MQ V7 的新功能

关于C#MQ Api如何在空队列的情况下获取消息而不会出现异常,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13563802/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com