我想设置一个并行处理其项目的
TransformBlock
。因此,我将ExecutionDataflowBlockOptions.MaxDegreeOfParallelism
设置为> 1。我不关心消息的顺序,但是文档说:
当您指定大于1的最大并行度时,多个消息将同时处理,因此,消息可能不按接收顺序处理。然而,从块输出消息的顺序将被正确排序。
"正确排序"是否意味着如果队列中有一个需要长时间处理的消息,则在处理此消息之前不会输出其他消息?
如果是这样,那么我该如何指定执行块(例如TransformBlock
),以使其不关心顺序?还是我必须在消费端指定我不关心顺序?