DataflowBlock.Choose Metoda

Definicja

Przeciążenia

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

Monitoruje trzy źródła przepływu danych, wywołując podaną procedurę obsługi dla niezależnie od tego, które źródło udostępnia dane jako pierwsze.

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

Monitoruje trzy źródła przepływu danych, wywołując podaną procedurę obsługi dla niezależnie od tego, które źródło udostępnia dane jako pierwsze.

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

Monitoruje dwa źródła przepływu danych, wywołując podaną procedurę obsługi dla niezależnie od tego, które źródło udostępnia dane jako pierwsze.

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

Monitoruje dwa źródła przepływu danych, wywołując podaną procedurę obsługi dla niezależnie od tego, które źródło udostępnia dane jako pierwsze.

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

Źródło:
DataflowBlock.cs
Źródło:
DataflowBlock.cs
Źródło:
DataflowBlock.cs
Źródło:
DataflowBlock.cs
Źródło:
DataflowBlock.cs
Źródło:
DataflowBlock.cs
Źródło:
DataflowBlock.cs

Monitoruje trzy źródła przepływu danych, wywołując podaną procedurę obsługi dla niezależnie od tego, które źródło udostępnia dane jako pierwsze.

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)

Parametry typu

T1

Określa typ danych zawartych w pierwszym źródle.

T2

Określa typ danych zawartych w drugim źródle.

T3

Określa typ danych zawartych w trzecim źródle.

Parametry

source1
ISourceBlock<T1>

Pierwsze źródło.

action1
Action<T1>

Procedura obsługi do wykonania na danych z pierwszego źródła.

source2
ISourceBlock<T2>

Drugie źródło.

action2
Action<T2>

Procedura obsługi do wykonania na danych z drugiego źródła.

source3
ISourceBlock<T3>

Trzecie źródło.

action3
Action<T3>

Procedura obsługi do wykonania na danych z trzeciego źródła.

Zwraca

Element Task<TResult> reprezentujący wybór asynchroniczny. Jeśli wszystkie źródła zostaną ukończone przed ukończeniem wyboru, wynikowe zadanie zostanie anulowane. Gdy jedno ze źródeł ma dostępne dane i pomyślnie je propaguje do wyboru, wynikowe zadanie zostanie ukończone po zakończeniu obsługi; Jeśli program obsługi zgłosi wyjątek, zadanie zakończy się w Faulted stanie i będzie zawierać nieobsługiwany wyjątek. W przeciwnym razie zadanie zostanie zakończone z Result ustawionym na 0 indeks źródła.

Ta metoda będzie używać tylko elementu z jednego ze źródeł danych, nigdy więcej niż jednego.

Wyjątki

source1 jest null.

— lub —

action1 jest null.

— lub —

source2 jest null.

— lub —

action2 jest null.

— lub —

source3 jest null.

— lub —

action3 jest null.

Dotyczy

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

Źródło:
DataflowBlock.cs
Źródło:
DataflowBlock.cs
Źródło:
DataflowBlock.cs
Źródło:
DataflowBlock.cs
Źródło:
DataflowBlock.cs
Źródło:
DataflowBlock.cs
Źródło:
DataflowBlock.cs

Monitoruje trzy źródła przepływu danych, wywołując podaną procedurę obsługi dla niezależnie od tego, które źródło udostępnia dane jako pierwsze.

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)

Parametry typu

T1

Określa typ danych zawartych w pierwszym źródle.

T2

Określa typ danych zawartych w drugim źródle.

T3

Określa typ danych zawartych w trzecim źródle.

Parametry

source1
ISourceBlock<T1>

Pierwsze źródło.

action1
Action<T1>

Procedura obsługi do wykonania na danych z pierwszego źródła.

source2
ISourceBlock<T2>

Drugie źródło.

action2
Action<T2>

Procedura obsługi do wykonania na danych z drugiego źródła.

source3
ISourceBlock<T3>

Trzecie źródło.

action3
Action<T3>

Procedura obsługi do wykonania na danych z trzeciego źródła.

dataflowBlockOptions
DataflowBlockOptions

Opcje, za pomocą których można skonfigurować ten wybór.

Zwraca

Element Task<TResult> reprezentujący wybór asynchroniczny. Jeśli wszystkie źródła zostaną ukończone przed ukończeniem wyboru lub jeśli CancellationToken podane jako część dataflowBlockOptions zostanie anulowane przed ukończeniem wyboru, wynikowe zadanie zostanie anulowane. Gdy jedno ze źródeł ma dostępne dane i pomyślnie je propaguje do wyboru, wynikowe zadanie zostanie ukończone po zakończeniu obsługi; Jeśli program obsługi zgłosi wyjątek, zadanie zakończy się w Faulted stanie i będzie zawierać nieobsługiwany wyjątek. W przeciwnym razie zadanie zostanie zakończone z Result ustawionym na 0 indeks źródła.

Ta metoda będzie używać tylko elementu z jednego ze źródeł danych, nigdy więcej niż jednego. Jeśli żądanie anulowania zostanie żądane po odebraniu elementu, żądanie anulowania zostanie zignorowane, a odpowiedni program obsługi będzie mógł wykonać.

Wyjątki

source1 jest null.

— lub —

action1 jest null.

— lub —

source2 jest null.

— lub —

action2 jest null.

— lub —

source3 jest null.

— lub —

action3 jest null.

— lub —

dataflowBlockOptions jest null.

Dotyczy

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

Źródło:
DataflowBlock.cs
Źródło:
DataflowBlock.cs
Źródło:
DataflowBlock.cs
Źródło:
DataflowBlock.cs
Źródło:
DataflowBlock.cs
Źródło:
DataflowBlock.cs
Źródło:
DataflowBlock.cs

Monitoruje dwa źródła przepływu danych, wywołując podaną procedurę obsługi dla niezależnie od tego, które źródło udostępnia dane jako pierwsze.

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)

Parametry typu

T1

Określa typ danych zawartych w pierwszym źródle.

T2

Określa typ danych zawartych w drugim źródle.

Parametry

source1
ISourceBlock<T1>

Pierwsze źródło.

action1
Action<T1>

Procedura obsługi do wykonania na danych z pierwszego źródła.

source2
ISourceBlock<T2>

Drugie źródło.

action2
Action<T2>

Procedura obsługi do wykonania na danych z drugiego źródła.

Zwraca

Element Task<TResult> reprezentujący wybór asynchroniczny. Jeśli oba źródła zostaną ukończone przed ukończeniem wyboru, wynikowe zadanie zostanie anulowane. Gdy jedno ze źródeł ma dostępne dane i pomyślnie je propaguje do wyboru, wynikowe zadanie zostanie ukończone po zakończeniu obsługi; Jeśli program obsługi zgłosi wyjątek, zadanie zakończy się w Faulted stanie i będzie zawierać nieobsługiwany wyjątek. W przeciwnym razie zadanie zostanie zakończone Result z ustawionym na 0 lub 1, aby reprezentować odpowiednio pierwsze lub drugie źródło.

Ta metoda będzie używać tylko elementu z jednego z dwóch źródeł danych, nigdy nie obu.

Wyjątki

source1 jest null.

— lub —

action1 jest null.

— lub —

source2 jest null.

— lub —

action2 jest null.

Dotyczy

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

Źródło:
DataflowBlock.cs
Źródło:
DataflowBlock.cs
Źródło:
DataflowBlock.cs
Źródło:
DataflowBlock.cs
Źródło:
DataflowBlock.cs
Źródło:
DataflowBlock.cs
Źródło:
DataflowBlock.cs

Monitoruje dwa źródła przepływu danych, wywołując podaną procedurę obsługi dla niezależnie od tego, które źródło udostępnia dane jako pierwsze.

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)

Parametry typu

T1

Określa typ danych zawartych w pierwszym źródle.

T2

Określa typ danych zawartych w drugim źródle.

Parametry

source1
ISourceBlock<T1>

Pierwsze źródło.

action1
Action<T1>

Procedura obsługi do wykonania na danych z pierwszego źródła.

source2
ISourceBlock<T2>

Drugie źródło.

action2
Action<T2>

Procedura obsługi do wykonania na danych z drugiego źródła.

dataflowBlockOptions
DataflowBlockOptions

Opcje, za pomocą których można skonfigurować ten wybór.

Zwraca

Element Task<TResult> reprezentujący wybór asynchroniczny. Jeśli oba źródła zostaną ukończone przed ukończeniem wyboru lub jeśli CancellationToken podane jako część dataflowBlockOptions zostanie anulowane przed ukończeniem wyboru, wynikowe zadanie zostanie anulowane. Gdy jedno ze źródeł ma dostępne dane i pomyślnie je propaguje do wyboru, wynikowe zadanie zostanie ukończone po zakończeniu obsługi; Jeśli program obsługi zgłosi wyjątek, zadanie zakończy się w Faulted stanie i będzie zawierać nieobsługiwany wyjątek. W przeciwnym razie zadanie zostanie zakończone Result z ustawionym na 0 lub 1, aby reprezentować odpowiednio pierwsze lub drugie źródło.

Wyjątki

source1 jest null.

— lub —

action1 jest null.

— lub —

source2 jest null.

— lub —

action2 jest null.

— lub —

dataflowBlockOptions jest null.

Dotyczy