MSMQ (トランザクションを使用) が競合するコンシューマーをサポートしているかどうか教えてもらえますか? 基本的に、単一のキューからメッセージをデキューする複数のスレッドがあります。MSMQ は予想とは異なる動作をすることがあるため、これが機能することを確認したかっただけです。
1143 次
1 に答える
6
同じマシンの同じキューの複数のプロセスから Receive を呼び出している場合、読み取りからトランザクションをロールバックしない限り、同じメッセージを複数回受け取ることはありません。
2008/w7 を使用していて、トランザクション内の同じリモート キューから複数のマシンで受信している場合、同じメッセージが 2 回表示されることはありません (ロールバックしない限り)。
列挙子を使用してメッセージをピークし、(RemoveCurrent を介して) 興味深いものを削除する場合、別のコンシューマーがメッセージを取得した場合、メッセージが既に削除されているという例外が発生することを予期する必要があります。
2003/XP を使用している場合、トランザクションでリモート受信を行うことはできないため、すべての賭けが無効になります。
于 2009-10-13T10:13:25.643 に答える