У меня есть роль рабочего Azure, которая отвечает за проверку 4 очередей служебных шин. В настоящее время я просто метод looping вручную проверяет очереди.Использование QueueClient.OnMessage в роли рабочего агента azure
while(true)
{
//loop through my queues to check for messages
}
С Azure SDK 2.0 появилась возможность слушать сообщения, а не опросы для них. Но каждый пример, который я видел, использует консольное приложение с Console.ReadKey(). Есть ли способ заставить рабочую роль сидеть и ждать сообщений?
Я пробовал:
public override void Run()
{
_queueProcessors.ForEach(x => x.OnMessage(Process);
}
где _queueProcessors список QueueClients и процесса является частным методом, который обрабатывает сообщения. Однако рабочая роль будет регистрировать их, а затем перезагружать.
Итак, кто-нибудь знает, как заставить клиента очереди сидеть и ждать сообщения?
Видимо ваш Google-фу лучше, чем у меня. :) Благодаря! – mccow002
mccow002 Вы должны дать @abhishek небольшой кредит. Он премьер-министр в команде Windows Azure. Он может очень хорошо написать образец до того, как OnMessage станет общедоступным. :) –
Очень приятно, побочным преимуществом такого подхода является то, что вы можете выйти из OnMessage всякий раз, когда захотите. Я искал какую-то форму state.Break (аналогично Parallel.For), но это работает отлично. Благодарю. – ProVega