DataflowBlock.Choose Metoda
Definicja
Ważne
Niektóre informacje odnoszą się do produktu w wersji wstępnej, który może zostać znacząco zmodyfikowany przed wydaniem. Firma Microsoft nie udziela żadnych gwarancji, jawnych lub domniemanych, w odniesieniu do informacji podanych w tym miejscu.
Przeciążenia
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
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 wykonane po zakończeniu obsługi; jeśli program obsługi zgłasza wyjątek, zadanie zakończy się w Faulted stanie i będzie zawierać nieobsługiwany wyjątek. W przeciwnym razie zadanie zakończy się Result z ustawionym na 0 indeksem źródła.
Ta metoda będzie używać tylko elementu z jednego ze źródeł danych, nigdy więcej niż jednego.
Wyjątki
Element source1
to null
.
-lub-
Element action1
to null
.
-lub-
Element source2
to null
.
-lub-
Element action2
to null
.
-lub-
Element source3
to null
.
-lub-
Element action3
to 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
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 zakoń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 wykonane po zakończeniu obsługi; jeśli program obsługi zgłasza wyjątek, zadanie zakończy się w Faulted stanie i będzie zawierać nieobsługiwany wyjątek. W przeciwnym razie zadanie zakończy się Result z ustawionym na 0 indeksem ź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 jest żądane po odebraniu elementu, żądanie anulowania zostanie zignorowane, a odpowiedni program obsługi będzie mógł wykonać.
Wyjątki
Element source1
to null
.
-lub-
Element action1
to null
.
-lub-
Element source2
to null
.
-lub-
Element action2
to null
.
-lub-
Element source3
to null
.
-lub-
Element action3
to null
.
-lub-
Element dataflowBlockOptions
to 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
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 wykonane po zakończeniu obsługi; jeśli program obsługi zgłasza wyjątek, zadanie zakończy się w Faulted stanie i będzie zawierać nieobsługiwany wyjątek. W przeciwnym razie zadanie zakończy Result się 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 oba.
Wyjątki
Element source1
to null
.
-lub-
Element action1
to null
.
-lub-
Element source2
to null
.
-lub-
Element action2
to 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
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 wykonane po zakończeniu obsługi; jeśli program obsługi zgłasza wyjątek, zadanie zakończy się w Faulted stanie i będzie zawierać nieobsługiwany wyjątek. W przeciwnym razie zadanie zakończy Result się z ustawionym na 0 lub 1, aby reprezentować odpowiednio pierwsze lub drugie źródło.
Wyjątki
Element source1
to null
.
-lub-
Element action1
to null
.
-lub-
Element source2
to null
.
-lub-
Element action2
to null
.
-lub-
Element dataflowBlockOptions
to null
.