Apache.NMS(C#)を使用してプログラムでキューをパージする機能が必要です。NMS APIを調べてきましたが、そのような機能はありません。それは存在しますか?
2487 次
2 に答える
6
NMS API からキューをフラッシュする直接的な方法はありません。これは管理機能のようなものです。IConnection インスタンスを Apahce.NMS.ActiveMQ.Connection にキャストしてから、DeleteDestination を呼び出すことができます。これは、キューにコンシューマーが存在しない場合は機能しますが、存在する場合は例外をスローします。
于 2011-02-16T19:50:11.517 に答える
0
キューを「フラッシュ」する(すべてのメッセージを削除する)の意味が正確にはわかりませんが、セッションをトランザクションに設定することでメッセージを管理できます。
ISession consumerSession = = connection.CreateSession(AcknowledgementMode.Transactional);
次に、次のいずれかを使用できます。
//will remove message from queue on success
consumerSession.Commit();
また:
//on failure, back on queue
consumerSession.Rollback();
于 2012-04-23T17:11:04.143 に答える