DataflowBlockOptions.EnsureOrdered Propriedade
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Obtém ou define um valor que indica se o processamento ordenado deve ser imposto na manipulação de mensagens de um bloco.
public:
property bool EnsureOrdered { bool get(); void set(bool value); };
public bool EnsureOrdered { get; set; }
member this.EnsureOrdered : bool with get, set
Public Property EnsureOrdered As Boolean
Valor da propriedade
true
se o processamento ordenado deve ser imposto; caso contrário, false
. O valor padrão é true
.
Comentários
Por padrão, os blocos de fluxo de dados impõem a ordenação no processamento de mensagens. Isso significa que um bloco como System.Threading.Tasks.Dataflow.TransformBlock<TInput,TOutput> garantirá que as mensagens sejam saídas na mesma ordem em que foram inseridas, mesmo que o paralelismo seja empregado pelo bloco e o processamento de uma mensagem N seja concluído após o processamento de uma mensagem subsequente N+1 (o bloco reordenará os resultados para manter a ordenação de entrada antes de disponibilizar esses resultados para um consumidor). Alguns blocos podem permitir que isso seja relaxado, no entanto. A configuração EnsureOrdered como false informa a um bloco que ele pode relaxar essa ordenação se for capaz de fazê-lo. Isso pode ser benéfico se disponibilizar imediatamente um resultado processado do que manter a ordenação de entrada para saída.