2014-11-15 45 views
1

我已经实现了一个长时间运行的进程作为一个WebJob,它是由一个队列消息触发的。我的理解是JobHost.RunAndBlock()只会在当前作业完成并返回后才开始执行。但是,如果我的第一个进程在另一个队列消息到达时仍在运行,则第二个进程将开始执行并破坏第一个进程(其中包含一些静态数据结构)。JobHost.RunAndBlock没有阻止

回答

2

默认情况下,并行处理队列消息。并行度的默认度是16.

如果您不想并行执行,您可以将JobHostConfiguration.Queues.BatchSize设置为1,如here所述。