public void ReceiveMessages(string subscription, Func<BrokeredMessage, Task> processMessageTask)
{
var options = new OnMessageOptions();
options.AutoComplete = true;
options.MaxConcurrentCalls = 10;
options.ExceptionReceived += this.OptionsOnExceptionReceived;
this.subscriptionClient.OnMessageAsync(
async (msg) =>
{
// Will block the current thread if Stop is called.
this.pauseProcessingEvent.WaitOne();
// Execute processing task here
await processMessageTask(msg);
},
options);
}