2014-11-15 5 views
1

Я реализовал длительный процесс как WebJob, который запускается при сообщении очереди. Я понимаю, что JobHost.RunAndBlock() начнет выполнение только после завершения и возврата текущего задания. Однако, если мой первый процесс все еще работает, когда приходит очередное сообщение о очереди, второй процесс запускает выполнение и уничтожает первый процесс (который имеет некоторые статические структуры данных).JobHost.RunAndBlock не блокирует

ответ

2

По умолчанию сообщения очереди обрабатываются параллельно. Степень параллелизма по умолчанию равна 16.

Если вы не хотите выполнять параллельное выполнение, вы можете установить JobHostConfiguration.Queues.BatchSize на 1, как описано here.