Я строй инструмента, который помещает сообщения в очереди и положить ответ/ответа на другом (как правило, очередь заглушки)IBM MQ Series ответного сообщения не сразу в очереди ответов
Все работает нормально, но это, кажется, что количество времени, которое требуется для получения ответного сообщения, и поместить очередь очереди больше, чем оно есть на самом деле. `
Try
PublicMQVariable.MQMessage_Reply = New MQMessage
PublicMQVariable.MQMessage_Reply.CorrelationId = PublicMQVariable.MQMessage_Request.MessageId
PublicMQVariable.MQMessage_Reply.MessageType = MQC.MQMT_REPLY
PublicMQVariable.MQGetMessageOptions_Response = New MQGetMessageOptions
PublicMQVariable.MQGetMessageOptions_Response.Options = MQC.MQGMO_WAIT + MQC.MQGMO_FAIL_IF_QUIESCING
PublicMQVariable.MQGetMessageOptions_Response.MatchOptions = MQC.MQMO_MATCH_CORREL_ID
PublicMQVariable.MQGetMessageOptions_Response.WaitInterval = PublicMQVariable.MyTimeOut
PublicMQVariable.MyStopwatch = Stopwatch.StartNew()
PublicMQVariable.MQQueue_Reply.Get(PublicMQVariable.MQMessage_Reply, PublicMQVariable.MQGetMessageOptions_Reply)
PublicMQVariable.MyStopwatch.Stop()
PublicMQVariable.MyReplyMessage = PublicMQVariable.MQMessage_Reply.ReadString(PublicMQVariable.MQMessage_Reply.MessageLength)
Catch ex As MQException
MsgBox("MQException: compCode: " & ex.CompCode.ToString() & " Reason: " + ex.Reason.ToString() & " - " & ex.Message)
MQDisconnectAndClose()
Return
End Try
Код выше только часть, где ответ«get'` Секундомер говорит ответ получен в +/- 2000 миллисекунд, но когда я просматриваю очередь ответа, то ответное сообщение только присутствует примерно через 18 секунд (глядя на мои часы и просматривая очередь постоянно)
- Это использование секундомера точной?
- Почему сообщение должно быть видимым в очереди сообщений?
- Есть ли возможность захватить ответное сообщение, как только оно будет сгенерировано системой? (до того, как он даже поставлен в очередь ответов)
Шаши, я не думаю, что я понимаю ваш вопрос. Является ли MQExporer функцией IBM Websphere? –
MQExplorer - это инструмент администрирования WebSphere MQ. Я пытался понять, как вы просматриваете очередь ответов. – Shashi
О, нет, я не использую MQExplorer. У меня для этого код нормальный код «получить сообщение». –