1
我正在創建一個正在監聽MQ中的消息的Windows服務。我目前的代碼似乎是一遍又一遍地重新處理同一個消息。我想改變這種代碼的當前消息完成後,纔開始聽的消息處理不聽,直到消息被處理Windows服務
這裏是我的,保持循環相同的消息當前代碼(一個消息的處理約需6分鐘)
protected override void OnStart(string[] args)
{
var maincode = new Thread(ProcessCode);
maincode.Name = "dud";
maincode.IsBackground = false;
maincode.Start();
}
void ProcessCode()
{
do
{
theListener.MessageReceived += new EventHandler<MessageReceivedEventArgs>(MQ_MessageReceived);
IBM.WMQ.MQMessage mqMessage = theListener.Listen("manager", "theQueue");
Thread.Sleep(5000);
} while (true);
}
如果您正在重新處理相同的消息,則可能需要在處理後確認消息以將其從隊列中實際刪除。所有這些都取決於MQ的工作方式(我不知道MQ),我猜是這個版本。從快速搜索看來,您可以以不同方式使用消息,因此您必須根據您在客戶端使用的配置來檢查是否遵循了正確的過程。 –