拥有从队列中窥视消息的简单代码
message = myQueue.Peek(TimeOutForPeek);
另一方面,消息只是发送到队列:
sendQueue.Send(message);
如果 myQueue 是事务性的,那么一切正常。但如果不是,在运行一段时间后我得到异常(见下文)并且处理停止。
System.Messaging.MessageQueueException (0x80004005):操作在完成之前被取消。在 System.Messaging.MessageQueue.ReceiveCurrent(TimeSpan 超时,Int32 操作,CursorHandle 游标,MessagePropertyFilter 过滤器,MessageQueueTransaction internalTransaction,MessageQueueTransactionType transactionType)在 System.Messaging.MessageQueue.Peek(TimeSpan 超时)
什么可能导致这种差异以及如何处理这种故障?我对 MSMQ 不是很熟悉,任何帮助将不胜感激。