ActiveMQ NMSコンシューマ(C#)は古いメッセージを受信できません。受信したメッセージで動作するwhileループになります。ActiveMQ NMSコンシューマは、C#の特定のシナリオでメッセージを受信しません。
私は、メッセージが必要なときにNMSコンシューマ接続を確立し、受信したメッセージを操作します。
問題は、私のプログラムの最初の接続試行の後に投稿されたメッセージをプログラムを起動するたびにダウンロードして使用することができます。
ただし、メッセージが流入していない場合、最初の接続を確立する前にいくつかの古いメッセージが残っていると、これらのメッセージは消費されません。私は適切なconnection.start()
を使用しました。私はconsumer.receive(0)0 - waittimeを使用しています。
ありがとうございます。各メッセージの接続を確立したり切断したりするための良い設計ではないと言いましたので、永続的なものに変更しようとします。私は受信(2秒)として2秒の待機を追加することでこれを解決し、それは働いた。メッセージが返されるたびに2秒間待たずに戻ります。メッセージがない場合は2秒待つ。 – saravanan