ibm mq — как ждать сообщения типа mqwi_unlimited в переполнении стека

Я новичок в WebsphereMQ C ++. Я хотел бы спросить, как ждать бесконечно входящее сообщение, не используя WaitInterval (MQWI_UNLIMITED) потому что, когда я использую этот mqwi_unlimited, он ждет сообщения в течение долгого времени, как и ожидалось, но приложение похоже на «зависание» при переходе в цикл получения сообщений (queue.get (msg, gmo)).

Я имею в виду установить интервал ожидания в несколько секунд, а затем снова подключиться или что-то в этом роде. Является ли это возможным?

Как я могу ждать сообщения, не получая ошибку «НЕТ ДОСТУПНОГО СООБЩЕНИЯ (MQRC 2033)?»

Причина, по которой я задаю этот вопрос, заключается в том, что я создаю демон, который ждет сообщения, а затем выполняет какой-то процесс. Приложение «стек» только при получении сообщения, я попытался заменить (MQWI_UNLIMITED), и оно переходит к следующему процессу ..

// ==== DAEMON === //

rcv-> начать (); -это get (цикл получения сообщения)

snd-> начать (); — это дело

скажем, приложение начинает получать и обрабатывать сообщение, но после этого оно никогда не выполняет snd-> начать ()

Пожалуйста, помогите мне. Спасибо 🙂

0

Решение

Я хотел бы спросить, как ждать бесконечно входящее сообщение,
без использования WaitInterval (MQWI_UNLIMITED)

Тот ЯВЛЯЕТСЯ как ты ждешь до бесконечности.

Вы можете использовать метод обратного вызова для получения сообщения, посмотрите поиск вызова API MQCB.

2

Другие решения


По вопросам рекламы [email protected]