DataflowBlock.Choose Methode
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Überlädt
Choose<T1,T2,T3>(ISourceBlock<T1>, Action<T1>, ISourceBlock<T2>, Action<T2>, ISourceBlock<T3>, Action<T3>) |
Überwacht drei Datenflussquellen, wobei der angegebene Handler für eine beliebige Quelle aufgerufen wird, die Daten zuerst verfügbar macht. |
Choose<T1,T2,T3>(ISourceBlock<T1>, Action<T1>, ISourceBlock<T2>, Action<T2>, ISourceBlock<T3>, Action<T3>, DataflowBlockOptions) |
Überwacht drei Datenflussquellen, wobei der angegebene Handler für eine beliebige Quelle aufgerufen wird, die Daten zuerst verfügbar macht. |
Choose<T1,T2>(ISourceBlock<T1>, Action<T1>, ISourceBlock<T2>, Action<T2>) |
Überwacht zwei Datenflussquellen, wobei der angegebene Handler für eine beliebige Quelle aufgerufen wird, die Daten zuerst verfügbar macht. |
Choose<T1,T2>(ISourceBlock<T1>, Action<T1>, ISourceBlock<T2>, Action<T2>, DataflowBlockOptions) |
Überwacht zwei Datenflussquellen, wobei der angegebene Handler für eine beliebige Quelle aufgerufen wird, die Daten zuerst verfügbar macht. |
Choose<T1,T2,T3>(ISourceBlock<T1>, Action<T1>, ISourceBlock<T2>, Action<T2>, ISourceBlock<T3>, Action<T3>)
Überwacht drei Datenflussquellen, wobei der angegebene Handler für eine beliebige Quelle aufgerufen wird, die Daten zuerst verfügbar macht.
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)
Typparameter
- T1
Gibt den Typ der Daten an, die in der ersten Quelle enthalten sind.
- T2
Gibt den Typ der Daten an, die in der zweiten Quelle enthalten sind.
- T3
Gibt den Datentyp an, der in der dritten Quelle enthalten ist.
Parameter
- source1
- ISourceBlock<T1>
Die erste Quelle.
- action1
- Action<T1>
Der Handler zu Ausführen von Daten aus der ersten Quelle.
- source2
- ISourceBlock<T2>
Die zweite Quelle.
- action2
- Action<T2>
Der Handler zu Ausführen von Daten aus der zweiten Quelle.
- source3
- ISourceBlock<T3>
Die dritte Quelle.
- action3
- Action<T3>
Die Handler zu Ausführen von Daten aus der dritten Quelle.
Gibt zurück
Eine Task<TResult>, die die asynchrone Auswahl darstellt. Wenn alle Quellen vor dem Abschluss der Auswahl beendet werden, wird die resultierende Aufgabe abgebrochen. Wenn eine der Datenquellen verfügbare Daten hat und erfolgreich an die Auswahl weitergibt, wird die resultierende Aufgabe abgeschlossen, wenn der Handler abgeschlossen wird. Wenn der Handler eine Ausnahme auslöst, endet die Aufgabe im Zustand Faulted und enthält den Ausnahmefehler. Andernfalls wird die Aufgabe mit dem Result beendet, das auf den 0-basierten Index der Quelle festgelegt ist.
Diese Methode verwendet nur ein Element aus einer der Datenquellen, nie mehr als eine.
Ausnahmen
source1
ist null
.
- oder -
action1
ist null
.
- oder -
source2
ist null
.
- oder -
action2
ist null
.
- oder -
source3
ist null
.
- oder -
action3
ist null
.
Gilt für
Choose<T1,T2,T3>(ISourceBlock<T1>, Action<T1>, ISourceBlock<T2>, Action<T2>, ISourceBlock<T3>, Action<T3>, DataflowBlockOptions)
Überwacht drei Datenflussquellen, wobei der angegebene Handler für eine beliebige Quelle aufgerufen wird, die Daten zuerst verfügbar macht.
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)
Typparameter
- T1
Gibt den Typ der Daten an, die in der ersten Quelle enthalten sind.
- T2
Gibt den Typ der Daten an, die in der zweiten Quelle enthalten sind.
- T3
Gibt den Datentyp an, der in der dritten Quelle enthalten ist.
Parameter
- source1
- ISourceBlock<T1>
Die erste Quelle.
- action1
- Action<T1>
Der Handler zu Ausführen von Daten aus der ersten Quelle.
- source2
- ISourceBlock<T2>
Die zweite Quelle.
- action2
- Action<T2>
Der Handler zu Ausführen von Daten aus der zweiten Quelle.
- source3
- ISourceBlock<T3>
Die dritte Quelle.
- action3
- Action<T3>
Die Handler zu Ausführen von Daten aus der dritten Quelle.
- dataflowBlockOptions
- DataflowBlockOptions
Die Optionen, mit denen diese Wahl zu konfigurieren ist.
Gibt zurück
Eine Task<TResult>, die die asynchrone Auswahl darstellt. Wenn alle Quellen vor dem Abschließen der Auswahl abgeschlossen werden oder wenn CancellationToken, das als Teil von dataflowBlockOptions
bereitgestellt wird, vor dem Abschließen der AUswahl abgebrochen wird, wird die resultierende Aufgabe abgebrochen. Wenn eine der Datenquellen verfügbare Daten hat und erfolgreich an die Auswahl weitergibt, wird die resultierende Aufgabe abgeschlossen, wenn der Handler abgeschlossen wird. Wenn der Handler eine Ausnahme auslöst, endet die Aufgabe im Zustand Faulted und enthält den Ausnahmefehler. Andernfalls wird die Aufgabe mit dem Result beendet, das auf den 0-basierten Index der Quelle festgelegt ist.
Diese Methode verwendet nur ein Element aus einer der Datenquellen, nie mehr als eine. Wenn der Abbruch angefordert wird, nachdem ein Element empfangen wurde, wird die Abbruchanforderung ignoriert, und der entsprechende Handler ist zulässig.
Ausnahmen
source1
ist null
.
- oder -
action1
ist null
.
- oder -
source2
ist null
.
- oder -
action2
ist null
.
- oder -
source3
ist null
.
- oder -
action3
ist null
.
- oder -
dataflowBlockOptions
ist null
.
Gilt für
Choose<T1,T2>(ISourceBlock<T1>, Action<T1>, ISourceBlock<T2>, Action<T2>)
Überwacht zwei Datenflussquellen, wobei der angegebene Handler für eine beliebige Quelle aufgerufen wird, die Daten zuerst verfügbar macht.
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)
Typparameter
- T1
Gibt den Typ der Daten an, die in der ersten Quelle enthalten sind.
- T2
Gibt den Typ der Daten an, die in der zweiten Quelle enthalten sind.
Parameter
- source1
- ISourceBlock<T1>
Die erste Quelle.
- action1
- Action<T1>
Der Handler zu Ausführen von Daten aus der ersten Quelle.
- source2
- ISourceBlock<T2>
Die zweite Quelle.
- action2
- Action<T2>
Der Handler zu Ausführen von Daten aus der zweiten Quelle.
Gibt zurück
Eine Task<TResult>, die die asynchrone Auswahl darstellt. Wenn beide Quellen vor dem Abschluss der Auswahl beendet werden, wird die resultierende Aufgabe abgebrochen. Wenn eine der Datenquellen verfügbare Daten hat und erfolgreich an die Auswahl weitergibt, wird die resultierende Aufgabe abgeschlossen, wenn der Handler abgeschlossen wird. Wenn der Handler eine Ausnahme auslöst, endet die Aufgabe im Zustand Faulted und enthält den Ausnahmefehler. Andernfalls wird die Aufgabe mit dem Result beendet, das entweder auf 0 oder 1 festgelegt ist, um jeweils die erste oder zweite Quelle darzustellen.
Diese Methode verwendet nur ein Element aus einer der beiden Datenquellen, nie beide.
Ausnahmen
source1
ist null
.
- oder -
action1
ist null
.
- oder -
source2
ist null
.
- oder -
action2
ist null
.
Gilt für
Choose<T1,T2>(ISourceBlock<T1>, Action<T1>, ISourceBlock<T2>, Action<T2>, DataflowBlockOptions)
Überwacht zwei Datenflussquellen, wobei der angegebene Handler für eine beliebige Quelle aufgerufen wird, die Daten zuerst verfügbar macht.
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)
Typparameter
- T1
Gibt den Typ der Daten an, die in der ersten Quelle enthalten sind.
- T2
Gibt den Typ der Daten an, die in der zweiten Quelle enthalten sind.
Parameter
- source1
- ISourceBlock<T1>
Die erste Quelle.
- action1
- Action<T1>
Der Handler zu Ausführen von Daten aus der ersten Quelle.
- source2
- ISourceBlock<T2>
Die zweite Quelle.
- action2
- Action<T2>
Der Handler zu Ausführen von Daten aus der zweiten Quelle.
- dataflowBlockOptions
- DataflowBlockOptions
Die Optionen, mit denen diese Wahl zu konfigurieren ist.
Gibt zurück
Eine Task<TResult>, die die asynchrone Auswahl darstellt. Wenn alle Quellen vor dem Abschließen der Auswahl abgeschlossen werden oder wenn CancellationToken, das als Teil von dataflowBlockOptions
bereitgestellt wird, vor dem Abschließen der Auswahl abgebrochen wird, wird die resultierende Aufgabe abgebrochen. Wenn eine der Datenquellen verfügbare Daten hat und erfolgreich an die Auswahl weitergibt, wird die resultierende Aufgabe abgeschlossen, wenn der Handler abgeschlossen wird. Wenn der Handler eine Ausnahme auslöst, endet die Aufgabe im Zustand Faulted und enthält den Ausnahmefehler. Andernfalls wird die Aufgabe mit dem Result beendet, das entweder auf 0 oder 1 festgelegt ist, um jeweils die erste oder zweite Quelle darzustellen.
Ausnahmen
source1
ist null
.
- oder -
action1
ist null
.
- oder -
source2
ist null
.
- oder -
action2
ist null
.
- oder -
dataflowBlockOptions
ist null
.