DataflowBlock.Choose Método

Definição

Sobrecargas

Nome Description
Choose<T1,T2,T3>(ISourceBlock<T1>, Action<T1>, ISourceBlock<T2>, Action<T2>, ISourceBlock<T3>, Action<T3>)

Monitora três fontes de fluxo de dados, invocando o manipulador fornecido para qualquer fonte que disponibilize os dados primeiro.

Choose<T1,T2,T3>(ISourceBlock<T1>, Action<T1>, ISourceBlock<T2>, Action<T2>, ISourceBlock<T3>, Action<T3>, DataflowBlockOptions)

Monitora três fontes de fluxo de dados, invocando o manipulador fornecido para qualquer fonte que disponibilize os dados primeiro.

Choose<T1,T2>(ISourceBlock<T1>, Action<T1>, ISourceBlock<T2>, Action<T2>)

Monitora duas fontes de fluxo de dados, invocando o manipulador fornecido para qualquer fonte que disponibilize os dados primeiro.

Choose<T1,T2>(ISourceBlock<T1>, Action<T1>, ISourceBlock<T2>, Action<T2>, DataflowBlockOptions)

Monitora duas fontes de fluxo de dados, invocando o manipulador fornecido para qualquer fonte que disponibilize os dados primeiro.

Choose<T1,T2,T3>(ISourceBlock<T1>, Action<T1>, ISourceBlock<T2>, Action<T2>, ISourceBlock<T3>, Action<T3>)

Origem:
DataflowBlock.cs
Origem:
DataflowBlock.cs
Origem:
DataflowBlock.cs
Origem:
DataflowBlock.cs
Origem:
DataflowBlock.cs
Origem:
DataflowBlock.cs
Origem:
DataflowBlock.cs

Monitora três fontes de fluxo de dados, invocando o manipulador fornecido para qualquer fonte que disponibilize os dados primeiro.

public:
generic <typename T1, typename T2, typename T3>
 static System::Threading::Tasks::Task<int> ^ Choose(System::Threading::Tasks::Dataflow::ISourceBlock<T1> ^ source1, Action<T1> ^ action1, System::Threading::Tasks::Dataflow::ISourceBlock<T2> ^ source2, Action<T2> ^ action2, System::Threading::Tasks::Dataflow::ISourceBlock<T3> ^ source3, Action<T3> ^ action3);
public static System.Threading.Tasks.Task<int> Choose<T1,T2,T3>(System.Threading.Tasks.Dataflow.ISourceBlock<T1> source1, Action<T1> action1, System.Threading.Tasks.Dataflow.ISourceBlock<T2> source2, Action<T2> action2, System.Threading.Tasks.Dataflow.ISourceBlock<T3> source3, Action<T3> action3);
static member Choose : System.Threading.Tasks.Dataflow.ISourceBlock<'T1> * Action<'T1> * System.Threading.Tasks.Dataflow.ISourceBlock<'T2> * Action<'T2> * System.Threading.Tasks.Dataflow.ISourceBlock<'T3> * Action<'T3> -> System.Threading.Tasks.Task<int>
Public Function Choose(Of T1, T2, T3) (source1 As ISourceBlock(Of T1), action1 As Action(Of T1), source2 As ISourceBlock(Of T2), action2 As Action(Of T2), source3 As ISourceBlock(Of T3), action3 As Action(Of T3)) As Task(Of Integer)

Parâmetros de tipo

T1

Especifica o tipo de dados contidos na primeira fonte.

T2

Especifica o tipo de dados contidos na segunda fonte.

T3

Especifica o tipo de dados contidos na terceira fonte.

Parâmetros

source1
ISourceBlock<T1>

A primeira fonte.

action1
Action<T1>

O manipulador a ser executado nos dados da primeira fonte.

source2
ISourceBlock<T2>

A segunda fonte.

action2
Action<T2>

O manipulador a ser executado nos dados da segunda fonte.

source3
ISourceBlock<T3>

A terceira fonte.

action3
Action<T3>

O manipulador a ser executado nos dados da terceira fonte.

Retornos

Um Task<TResult> que representa a escolha assíncrona. Se todas as fontes forem concluídas antes da conclusão da escolha, a tarefa resultante será cancelada. Quando uma das fontes tiver dados disponíveis e propagar com êxito para a escolha, a tarefa resultante será concluída quando o manipulador for concluído; se o manipulador gerar uma exceção, a tarefa terminará no Faulted estado e conterá a exceção sem tratamento. Caso contrário, a tarefa terminará com seu Result conjunto para o índice baseado em 0 da origem.

Esse método consumirá apenas um elemento de uma das fontes de dados, nunca mais de uma.

Exceções

O source1 é null.

- ou -

O action1 é null.

- ou -

O source2 é null.

- ou -

O action2 é null.

- ou -

O source3 é null.

- ou -

O action3 é null.

Aplica-se a

Choose<T1,T2,T3>(ISourceBlock<T1>, Action<T1>, ISourceBlock<T2>, Action<T2>, ISourceBlock<T3>, Action<T3>, DataflowBlockOptions)

Origem:
DataflowBlock.cs
Origem:
DataflowBlock.cs
Origem:
DataflowBlock.cs
Origem:
DataflowBlock.cs
Origem:
DataflowBlock.cs
Origem:
DataflowBlock.cs
Origem:
DataflowBlock.cs

Monitora três fontes de fluxo de dados, invocando o manipulador fornecido para qualquer fonte que disponibilize os dados primeiro.

public:
generic <typename T1, typename T2, typename T3>
 static System::Threading::Tasks::Task<int> ^ Choose(System::Threading::Tasks::Dataflow::ISourceBlock<T1> ^ source1, Action<T1> ^ action1, System::Threading::Tasks::Dataflow::ISourceBlock<T2> ^ source2, Action<T2> ^ action2, System::Threading::Tasks::Dataflow::ISourceBlock<T3> ^ source3, Action<T3> ^ action3, System::Threading::Tasks::Dataflow::DataflowBlockOptions ^ dataflowBlockOptions);
public static System.Threading.Tasks.Task<int> Choose<T1,T2,T3>(System.Threading.Tasks.Dataflow.ISourceBlock<T1> source1, Action<T1> action1, System.Threading.Tasks.Dataflow.ISourceBlock<T2> source2, Action<T2> action2, System.Threading.Tasks.Dataflow.ISourceBlock<T3> source3, Action<T3> action3, System.Threading.Tasks.Dataflow.DataflowBlockOptions dataflowBlockOptions);
static member Choose : System.Threading.Tasks.Dataflow.ISourceBlock<'T1> * Action<'T1> * System.Threading.Tasks.Dataflow.ISourceBlock<'T2> * Action<'T2> * System.Threading.Tasks.Dataflow.ISourceBlock<'T3> * Action<'T3> * System.Threading.Tasks.Dataflow.DataflowBlockOptions -> System.Threading.Tasks.Task<int>
Public Function Choose(Of T1, T2, T3) (source1 As ISourceBlock(Of T1), action1 As Action(Of T1), source2 As ISourceBlock(Of T2), action2 As Action(Of T2), source3 As ISourceBlock(Of T3), action3 As Action(Of T3), dataflowBlockOptions As DataflowBlockOptions) As Task(Of Integer)

Parâmetros de tipo

T1

Especifica o tipo de dados contidos na primeira fonte.

T2

Especifica o tipo de dados contidos na segunda fonte.

T3

Especifica o tipo de dados contidos na terceira fonte.

Parâmetros

source1
ISourceBlock<T1>

A primeira fonte.

action1
Action<T1>

O manipulador a ser executado nos dados da primeira fonte.

source2
ISourceBlock<T2>

A segunda fonte.

action2
Action<T2>

O manipulador a ser executado nos dados da segunda fonte.

source3
ISourceBlock<T3>

A terceira fonte.

action3
Action<T3>

O manipulador a ser executado nos dados da terceira fonte.

dataflowBlockOptions
DataflowBlockOptions

As opções com as quais configurar essa opção.

Retornos

Um Task<TResult> que representa a escolha assíncrona. Se todas as fontes forem concluídas antes da conclusão da escolha ou se o CancellationToken fornecido como parte dataflowBlockOptions for cancelado antes da conclusão da escolha, a tarefa resultante será cancelada. Quando uma das fontes tiver dados disponíveis e propagar com êxito para a escolha, a tarefa resultante será concluída quando o manipulador for concluído; se o manipulador gerar uma exceção, a tarefa terminará no Faulted estado e conterá a exceção sem tratamento. Caso contrário, a tarefa terminará com seu Result conjunto para o índice baseado em 0 da origem.

Esse método consumirá apenas um elemento de uma das fontes de dados, nunca mais de uma. Se o cancelamento for solicitado após o recebimento de um elemento, a solicitação de cancelamento será ignorada e o manipulador relevante poderá ser executado.

Exceções

O source1 é null.

- ou -

O action1 é null.

- ou -

O source2 é null.

- ou -

O action2 é null.

- ou -

O source3 é null.

- ou -

O action3 é null.

- ou -

O dataflowBlockOptions é null.

Aplica-se a

Choose<T1,T2>(ISourceBlock<T1>, Action<T1>, ISourceBlock<T2>, Action<T2>)

Origem:
DataflowBlock.cs
Origem:
DataflowBlock.cs
Origem:
DataflowBlock.cs
Origem:
DataflowBlock.cs
Origem:
DataflowBlock.cs
Origem:
DataflowBlock.cs
Origem:
DataflowBlock.cs

Monitora duas fontes de fluxo de dados, invocando o manipulador fornecido para qualquer fonte que disponibilize os dados primeiro.

public:
generic <typename T1, typename T2>
 static System::Threading::Tasks::Task<int> ^ Choose(System::Threading::Tasks::Dataflow::ISourceBlock<T1> ^ source1, Action<T1> ^ action1, System::Threading::Tasks::Dataflow::ISourceBlock<T2> ^ source2, Action<T2> ^ action2);
public static System.Threading.Tasks.Task<int> Choose<T1,T2>(System.Threading.Tasks.Dataflow.ISourceBlock<T1> source1, Action<T1> action1, System.Threading.Tasks.Dataflow.ISourceBlock<T2> source2, Action<T2> action2);
static member Choose : System.Threading.Tasks.Dataflow.ISourceBlock<'T1> * Action<'T1> * System.Threading.Tasks.Dataflow.ISourceBlock<'T2> * Action<'T2> -> System.Threading.Tasks.Task<int>
Public Function Choose(Of T1, T2) (source1 As ISourceBlock(Of T1), action1 As Action(Of T1), source2 As ISourceBlock(Of T2), action2 As Action(Of T2)) As Task(Of Integer)

Parâmetros de tipo

T1

Especifica o tipo de dados contidos na primeira fonte.

T2

Especifica o tipo de dados contidos na segunda fonte.

Parâmetros

source1
ISourceBlock<T1>

A primeira fonte.

action1
Action<T1>

O manipulador a ser executado nos dados da primeira fonte.

source2
ISourceBlock<T2>

A segunda fonte.

action2
Action<T2>

O manipulador a ser executado nos dados da segunda fonte.

Retornos

Um Task<TResult> que representa a escolha assíncrona. Se ambas as fontes forem concluídas antes da conclusão da escolha, a tarefa resultante será cancelada. Quando uma das fontes tiver dados disponíveis e propagar com êxito para a escolha, a tarefa resultante será concluída quando o manipulador for concluído; se o manipulador gerar uma exceção, a tarefa terminará no Faulted estado e conterá a exceção sem tratamento. Caso contrário, a tarefa terminará com seu Result conjunto como 0 ou 1 para representar a primeira ou segunda origem, respectivamente.

Esse método consumirá apenas um elemento de uma das duas fontes de dados, nunca ambas.

Exceções

O source1 é null.

- ou -

O action1 é null.

- ou -

O source2 é null.

- ou -

O action2 é null.

Aplica-se a

Choose<T1,T2>(ISourceBlock<T1>, Action<T1>, ISourceBlock<T2>, Action<T2>, DataflowBlockOptions)

Origem:
DataflowBlock.cs
Origem:
DataflowBlock.cs
Origem:
DataflowBlock.cs
Origem:
DataflowBlock.cs
Origem:
DataflowBlock.cs
Origem:
DataflowBlock.cs
Origem:
DataflowBlock.cs

Monitora duas fontes de fluxo de dados, invocando o manipulador fornecido para qualquer fonte que disponibilize os dados primeiro.

public:
generic <typename T1, typename T2>
 static System::Threading::Tasks::Task<int> ^ Choose(System::Threading::Tasks::Dataflow::ISourceBlock<T1> ^ source1, Action<T1> ^ action1, System::Threading::Tasks::Dataflow::ISourceBlock<T2> ^ source2, Action<T2> ^ action2, System::Threading::Tasks::Dataflow::DataflowBlockOptions ^ dataflowBlockOptions);
public static System.Threading.Tasks.Task<int> Choose<T1,T2>(System.Threading.Tasks.Dataflow.ISourceBlock<T1> source1, Action<T1> action1, System.Threading.Tasks.Dataflow.ISourceBlock<T2> source2, Action<T2> action2, System.Threading.Tasks.Dataflow.DataflowBlockOptions dataflowBlockOptions);
static member Choose : System.Threading.Tasks.Dataflow.ISourceBlock<'T1> * Action<'T1> * System.Threading.Tasks.Dataflow.ISourceBlock<'T2> * Action<'T2> * System.Threading.Tasks.Dataflow.DataflowBlockOptions -> System.Threading.Tasks.Task<int>
Public Function Choose(Of T1, T2) (source1 As ISourceBlock(Of T1), action1 As Action(Of T1), source2 As ISourceBlock(Of T2), action2 As Action(Of T2), dataflowBlockOptions As DataflowBlockOptions) As Task(Of Integer)

Parâmetros de tipo

T1

Especifica o tipo de dados contidos na primeira fonte.

T2

Especifica o tipo de dados contidos na segunda fonte.

Parâmetros

source1
ISourceBlock<T1>

A primeira fonte.

action1
Action<T1>

O manipulador a ser executado nos dados da primeira fonte.

source2
ISourceBlock<T2>

A segunda fonte.

action2
Action<T2>

O manipulador a ser executado nos dados da segunda fonte.

dataflowBlockOptions
DataflowBlockOptions

As opções com as quais configurar essa opção.

Retornos

Um Task<TResult> que representa a escolha assíncrona. Se ambas as fontes forem concluídas antes da conclusão da escolha ou se o CancellationToken fornecido como parte dataflowBlockOptions for cancelado antes da conclusão da escolha, a tarefa resultante será cancelada. Quando uma das fontes tiver dados disponíveis e propagar com êxito para a escolha, a tarefa resultante será concluída quando o manipulador for concluído; se o manipulador gerar uma exceção, a tarefa terminará no Faulted estado e conterá a exceção sem tratamento. Caso contrário, a tarefa terminará com seu Result conjunto como 0 ou 1 para representar a primeira ou segunda origem, respectivamente.

Exceções

O source1 é null.

- ou -

O action1 é null.

- ou -

O source2 é null.

- ou -

O action2 é null.

- ou -

O dataflowBlockOptions é null.

Aplica-se a