Если очередь FIFO, то ваш обзор вернет самое старое сообщение.Но если очередь настроена на приоритетную доставку, вам придется просматривать очередь до тех пор, пока вы не найдете первое сообщение с самым низким приоритетом.Ваш фрагмент кода указывает, что это очередь событий.Если это относится к очередям SYSTEM. *. EVENT, то они всегда должны быть в режиме FIFO.Даже если администратор меняет их на приоритетную доставку, все сообщения о системных событиях создаются с одинаковым приоритетом.
Сложность, с которой вы сталкиваетесь с сообщениями с упорядоченным приоритетом, заключается в том, что можно игнорировать более низкие приоритеты, но не более высокие приоритеты.Например, если вы укажете приоритет 5 в вашем просмотре, и какие-либо сообщения будут иметь приоритет 4 или ниже, они не будут возвращены.Но будут возвращены сообщения или более высокий приоритет, а не только сообщения с приоритетом 5, а скорее сообщения с приоритетом 9, за которыми следуют сообщения с приоритетом 8 и так далее.Таким образом, вы не сможете выборочно просматривать первое сообщение в каждом приоритете, но вместо этого будете вынуждены просматривать, пока не найдете первое сообщение с приоритетом 0, чтобы знать, что вы видели самое старое сообщение в очереди, если для порядка доставки очереди задано значениеПриоритет.
Возможно, стоит пересмотреть методы в com.ibm.mq.pcf , чтобы узнать, как запрашивать атрибуты очереди.Если очередь FIFO, просто просмотрите первое сообщение.Если нет, просмотрите длину очереди, сохраняя первое сообщение, полученное от каждого приоритета, сравните метку времени с любым сообщением с более высоким приоритетом и отбросьте более новое.
Обратите внимание, что транзакции повлияют на вашу способность просматривать сообщения.Любое сообщение, сохраненное в syncpoint, будет недоступно для просмотра.Будет возвращено самое старое сообщение, не находящееся в точке синхронизации.
Наконец, если вы пытаетесь определить работоспособность очереди Интервал обслуживания очереди события или статистика QStatus может предоставитьчто вам нужно, и избежать лишних затрат при просмотре глубоких очередей.