Привет, я использую MQCB
для регистрации функции обратного вызова в моей очереди для чтения новых данных. Я использовал MQGMO
вариант MQGMO_SYNCPOINT
. Поэтому вызовите MQCMIT
в конце функции обратного вызова. Сразу же я вызываю MQCTL
и запускаю потребление сообщений в очереди, с помощью которых вызывается функция обратного вызова.
Моя ситуация здесь, я выполняю определенный набор задач в функции обратного вызова, и я не хочу, чтобы вызывающая функция вызывалась в следующее новое сообщение, которое помещается в очередь. Я хочу, чтобы мой набор задач был завершен первым.
Я уверен, что должен быть способ сделать это, но не в состоянии выяснить, с сайта Google или IBM.
Может ли кто-нибудь помочь мне в этом. Моя база кода - C и C++.
Искать варианты MQOP_SUSPEND и MQOP_RESUME в MQCTL (см http://pic.dhe.ibm.com/infocenter/wmqv7/v7r1/index.jsp?topic=%2Fcom.ibm.mq.doc%2Ffr41300_.htm)
С уважением
If you intend to stop consuming messages for a long time, consider closing the queue and reopening it when consumption continues.
? , Также я должен зафиксировать мою операцию чтения из обратного вызова, прежде чем я возобновлюMQCTL
?