Вы просите MQ знать об инфраструктуре вашего приложения. Это невозможно.
Решение № 1:
Почему бы вам не скопировать / реплицировать все сообщения во вторичную очередь, тогда ваше вторичное приложение будет обрабатывать сообщения ТОЛЬКО ЕСЛИ IPPROCS первичной очереди НУЛЬ. Как только IPPROCS первичной очереди НЕ равен нулю, отбросьте сообщения во вторичной очереди.
Решение № 2:
Создайте третье приложение, которое контролирует IPPROCS первичной очереди. Когда он равен нулю, начните копировать сообщения во вторичную очередь. Примечание. Когда третье приложение открывает первичную очередь, IPPROCS будет 1. Следовательно, когда IPPROCS первичной очереди равно 2 (или больше), прекратите копирование сообщений и закройте первичную очередь.
Решение # 3:
Может потребоваться стороннее решение. Вы можете использовать MQ Message Replication (MQMR) для копирования / репликации сообщений из первичной очереди во вторичную очередь. Настройте MQMR по мере необходимости, но сделайте его неактивным. Когда основное приложение отключается / отключается, немедленно измените MQMR на активное. Когда основное приложение снова будет запущено, переключите MQMR обратно в неактивное состояние.
Решение 4:
Это решение представляет собой комбинацию решения №1 и №3. Используйте MQMR , чтобы скопировать / реплицировать все сообщения из первичной очереди во вторичную очередь. Ваше вторичное приложение должно обрабатывать сообщения ТОЛЬКО, ЕСЛИ IPPROCS первичной очереди - НУЛЬ. Как только IPPROCS первичной очереди НЕ равен нулю, отбрасывайте сообщения во вторичной очереди.