0

このスニペットは、キュー ブラウザーをループし続けます。Apache.NMS 1.5.1、Apache.NMS.ActiveMQ 1.5.6、ブローカー 5.8.0

キューのサイズが 200 未満 プリフェッチを確認しましたが、デフォルトのままです。

C# と Apache NMS を使用した ActiveMQ - キュー内のメッセージをカウントすると、ループをチェックすることが提案されますenumerator.Currentが、私はすでにそれを行っています。

で大きなプリフェッチを設定しようとしまし?jms.prefetchPolicy.all=50000たが、それでもループします。

IConnectionFactory connectionFactory = new ConnectionFactory(connectUri, "SNDTest");
    using (IConnection conn = connectionFactory.CreateConnection(USERNAME, PASSWORD))
    {
        conn.Start();
        using (ISession session = conn.CreateSession())
        {
            using (IQueueBrowser browser = session.CreateBrowser(errorQueue))
                {
                    int i = 0;
                    var e = browser.GetEnumerator();
                    while (e.MoveNext())
                    {
                        i++;
                        IMessage m = e.Current as IMessage;

ループを停止するにはどうすればよいですか?

4

1 に答える 1

0

これは、 AMQ-4487など、v5.9.0 スナップショット ビルドで修正されたいくつかのバグに関連している可能性があります。ブローカーの最近のナイトリー ビルドをダウンロードして、それに対して実行してみてください。

于 2013-07-01T20:49:20.830 に答える