2015-01-22 3 views
0

Клиент хочет сбросить очередь за один раз. Однако ни один из пакетных опций не доступен на Java, поэтому они настаивают на полном удалении очереди.Обнаружение удаления очереди

Вопрос в том, как определить, что очереди больше нет? Есть какой-то крючок? Потому что мой слушатель будет просто молчать и ничего не делать.

(Очередь создается, когда рабочая роль запускается, если она еще не существует, поэтому обычно перезагрузка очереди будет работать. Единственная проблема заключается в том, что существует много экземпляров, поэтому немного перезагрузить ее.)

ответ

0

NamespaceManager.QueueExists должен выполнить эту работу за вас.

+0

Я знаю это, но что это будет называть? В настоящее время все сообщения принимаются через _queueClient.OnMessage ((receivedMessage) => {...}); –

+0

@ VadimBerman, если они настаивают на удалении очереди, вам просто придется периодически опробовать его существование. Я склонен искать решение, которое не требует удаления и воссоздания очереди. Я не знаю, какую библиотеку java они используют, но как прием, так и удаление и блокировка Peek блокируются над REST API, поэтому нетрудно получить доступ к необходимым функциям. – ScottS

+0

Ну, я согласен, но они хотят очистить его за один раз, и у них есть клиент Java, поэтому PrefetchCount и пакетная очистка не работают. Тем не менее, где я собираюсь опросить его? Я не хочу настраивать таймер. Это единственная причина, по которой я спрашиваю. –

Смежные вопросы