0
は私がキューを作成:キューが削除されていることを知るには?
_channel = rmqConnection.CreateModel();
_channel.QueueDeclare("myqueue", false, false, false, null);
_channel.BasicAcks += _channel_BasicAcks;
_channel.BasicNacks += _channel_BasicNacks;
_channel.BasicRecoverOk += _channel_BasicRecoverOk;
_channel.BasicReturn += _channel_BasicReturn;
_channel.CallbackException += _channel_CallbackException;
_channel.FlowControl += _channel_FlowControl;
_channel.ModelShutdown += _channel_ModelShutdown;
をして、私は(と場合)キューが削除されますときにイベントにサブスクライブしたいと思います。 これをテストするために私が手動でキューを削除すると、私はイベントを処理できません。
キューの削除と破棄に関するイベントを処理するにはどうすればよいですか?
P.S.新しいコードを追加してください:
var consumer = new EventingBasicConsumer(_channel);
consumer.Received += OnMessageRecieved;
consumer.ConsumerCancelled += Consumer_ConsumerCancelled;
consumer.Registered += Consumer_Registered;
consumer.Shutdown += Consumer_Shutdown;
consumer.Unregistered += Consumer_Unregistered;
_channel.BasicConsume(SharebleConst.RmqQueueName, false, consumer);
キューを作成すると、Consumer_Registered
が発生します。 私はConsumer_ConsumerCancelled
がは、キューが削除された場合に通知を受け取るための方法は、ありません
ちょっと好奇心:これは何のために必要ですか? – Evk
キューはどこで破棄されていますか? – lucky
@Rainman、私は管理パネルからマニュアルを削除します。しかし、生産現場では、このキューも削除されています(マニュアルではありません) –