1
如何停止從C#中的MessageQueue進行同步或異步接收?爲什麼我的MessageQueue不能正確關閉?
我發現,如果自從打開它以來我沒有收到任何來自隊列的消息,我可以簡單地關閉/處置隊列,並且Receive或EndReceive方法將除外,這很好。但是,如果我已經成功接收到來自隊列的消息,則可以關閉並處理隊列,但掛起或異步接收將繼續進行!
我已經讀過其他地方,並發現一些建議,我應該讓EnableConnectionCache爲false以確保消息隊列在我詢問時關閉,但它似乎仍然無視我。
[.NET異步MSMQ]的可能的重複(http://stackoverflow.com/questions/5486058/net-asynchronous-msmq) – 2011-03-31 13:39:58
MS想出了開始/結束模式,沒有考慮到取消:(我不喜歡這個事實,即使在最好的情況下,在取消的情況下,通常可能會有一個競爭條件完成 - 它可能太遠了,以至於在調用回調之前無法及時取消它。 – 2011-12-24 02:40:25