Nyelv

DataflowBlock.Choose Metódus

Definíció

Túlterhelések

Név Description
Choose<T1,T2,T3>(ISourceBlock<T1>, Action<T1>, ISourceBlock<T2>, Action<T2>, ISourceBlock<T3>, Action<T3>)

Három adatfolyamforrást figyel, és a megadott kezelőt invokálásával jelzi, hogy melyik forrás teszi először elérhetővé az adatokat.

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

Három adatfolyamforrást figyel, és a megadott kezelőt invokálásával jelzi, hogy melyik forrás teszi először elérhetővé az adatokat.

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

Két adatfolyamforrást figyel, és a megadott kezelőt invokálásával adja meg, hogy melyik forrás teszi először elérhetővé az adatokat.

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

Két adatfolyamforrást figyel, és a megadott kezelőt invokálásával adja meg, hogy melyik forrás teszi először elérhetővé az adatokat.

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

Forrás:
DataflowBlock.cs
Forrás:
DataflowBlock.cs
Forrás:
DataflowBlock.cs
Forrás:
DataflowBlock.cs
Forrás:
DataflowBlock.cs
Forrás:
DataflowBlock.cs
Forrás:
DataflowBlock.cs

Három adatfolyamforrást figyel, és a megadott kezelőt invokálásával jelzi, hogy melyik forrás teszi először elérhetővé az adatokat.

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)

Típusparaméterek

T1

Az első forrásban található adatok típusát adja meg.

T2

A második forrásban található adatok típusát adja meg.

T3

A harmadik forrásban található adatok típusát adja meg.

Paraméterek

source1
ISourceBlock<T1>

Az első forrás.

action1
Action<T1>

Az első forrásból származó adatokon végrehajtandó kezelő.

source2
ISourceBlock<T2>

A második forrás.

action2
Action<T2>

A második forrásból származó adatokon végrehajtandó kezelő.

source3
ISourceBlock<T3>

A harmadik forrás.

action3
Action<T3>

A harmadik forrásból származó adatokon végrehajtandó kezelő.

Válaszok

Az Task<TResult> aszinkron választást jelképező érték. Ha az összes forrás a választás befejezése előtt befejeződik, az eredményként kapott feladat megszakad. Ha az egyik forrás rendelkezik elérhető adatokkal, és sikeresen propagálja azt a választott helyre, az eredményként kapott feladat befejeződik, amikor a kezelő befejeződik; ha a kezelő kivételt ad ki, a tevékenység az Faulted állapotban fejeződik be, és a kezeletlen kivételt tartalmazza. Ellenkező esetben a tevékenység Result a forrás 0-alapú indexére lesz állítva.

Ez a módszer csak az egyik adatforrásból származó elemet használja fel, legfeljebb egyet.

Kivételek

Az source1 van null.

-vagy-

Az action1 van null.

-vagy-

Az source2 van null.

-vagy-

Az action2 van null.

-vagy-

Az source3 van null.

-vagy-

Az action3 van null.

A következőre érvényes:

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

Forrás:
DataflowBlock.cs
Forrás:
DataflowBlock.cs
Forrás:
DataflowBlock.cs
Forrás:
DataflowBlock.cs
Forrás:
DataflowBlock.cs
Forrás:
DataflowBlock.cs
Forrás:
DataflowBlock.cs

Három adatfolyamforrást figyel, és a megadott kezelőt invokálásával jelzi, hogy melyik forrás teszi először elérhetővé az adatokat.

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)

Típusparaméterek

T1

Az első forrásban található adatok típusát adja meg.

T2

A második forrásban található adatok típusát adja meg.

T3

A harmadik forrásban található adatok típusát adja meg.

Paraméterek

source1
ISourceBlock<T1>

Az első forrás.

action1
Action<T1>

Az első forrásból származó adatokon végrehajtandó kezelő.

source2
ISourceBlock<T2>

A második forrás.

action2
Action<T2>

A második forrásból származó adatokon végrehajtandó kezelő.

source3
ISourceBlock<T3>

A harmadik forrás.

action3
Action<T3>

A harmadik forrásból származó adatokon végrehajtandó kezelő.

dataflowBlockOptions
DataflowBlockOptions

A beállítások, amelyekkel konfigurálhatja ezt a választást.

Válaszok

Az Task<TResult> aszinkron választást jelképező érték. Ha az összes forrás a választás befejezése előtt befejeződött, vagy ha a CancellationToken megadott részt dataflowBlockOptions a választás befejezése előtt megszakítják, az eredményként kapott feladat megszakad. Ha az egyik forrás rendelkezik elérhető adatokkal, és sikeresen propagálja azt a választott helyre, az eredményként kapott feladat befejeződik, amikor a kezelő befejeződik; ha a kezelő kivételt ad ki, a tevékenység az Faulted állapotban fejeződik be, és a kezeletlen kivételt tartalmazza. Ellenkező esetben a tevékenység Result a forrás 0-alapú indexére lesz állítva.

Ez a módszer csak az egyik adatforrásból származó elemet használja fel, legfeljebb egyet. Ha a törlést egy elem beérkezése után kérik, a rendszer figyelmen kívül hagyja a lemondási kérelmet, és a megfelelő kezelő végrehajthatja.

Kivételek

Az source1 van null.

-vagy-

Az action1 van null.

-vagy-

Az source2 van null.

-vagy-

Az action2 van null.

-vagy-

Az source3 van null.

-vagy-

Az action3 van null.

-vagy-

Az dataflowBlockOptions van null.

A következőre érvényes:

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

Forrás:
DataflowBlock.cs
Forrás:
DataflowBlock.cs
Forrás:
DataflowBlock.cs
Forrás:
DataflowBlock.cs
Forrás:
DataflowBlock.cs
Forrás:
DataflowBlock.cs
Forrás:
DataflowBlock.cs

Két adatfolyamforrást figyel, és a megadott kezelőt invokálásával adja meg, hogy melyik forrás teszi először elérhetővé az adatokat.

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)

Típusparaméterek

T1

Az első forrásban található adatok típusát adja meg.

T2

A második forrásban található adatok típusát adja meg.

Paraméterek

source1
ISourceBlock<T1>

Az első forrás.

action1
Action<T1>

Az első forrásból származó adatokon végrehajtandó kezelő.

source2
ISourceBlock<T2>

A második forrás.

action2
Action<T2>

A második forrásból származó adatokon végrehajtandó kezelő.

Válaszok

Az Task<TResult> aszinkron választást jelképező érték. Ha mindkét forrás a választás befejezése előtt befejeződik, az eredményként kapott tevékenység megszakad. Ha az egyik forrás rendelkezik elérhető adatokkal, és sikeresen propagálja azt a választott helyre, az eredményként kapott feladat befejeződik, amikor a kezelő befejeződik; ha a kezelő kivételt ad ki, a tevékenység az Faulted állapotban fejeződik be, és a kezeletlen kivételt tartalmazza. Ellenkező esetben a tevékenység 0 vagy 1 értékre Result lesz állítva, hogy az első vagy a második forrást jelölje.

Ez a módszer csak a két adatforrás egyikéből használ fel elemet, mindkettőt soha.

Kivételek

Az source1 van null.

-vagy-

Az action1 van null.

-vagy-

Az source2 van null.

-vagy-

Az action2 van null.

A következőre érvényes:

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

Forrás:
DataflowBlock.cs
Forrás:
DataflowBlock.cs
Forrás:
DataflowBlock.cs
Forrás:
DataflowBlock.cs
Forrás:
DataflowBlock.cs
Forrás:
DataflowBlock.cs
Forrás:
DataflowBlock.cs

Két adatfolyamforrást figyel, és a megadott kezelőt invokálásával adja meg, hogy melyik forrás teszi először elérhetővé az adatokat.

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)

Típusparaméterek

T1

Az első forrásban található adatok típusát adja meg.

T2

A második forrásban található adatok típusát adja meg.

Paraméterek

source1
ISourceBlock<T1>

Az első forrás.

action1
Action<T1>

Az első forrásból származó adatokon végrehajtandó kezelő.

source2
ISourceBlock<T2>

A második forrás.

action2
Action<T2>

A második forrásból származó adatokon végrehajtandó kezelő.

dataflowBlockOptions
DataflowBlockOptions

A beállítások, amelyekkel konfigurálhatja ezt a választást.

Válaszok

Az Task<TResult> aszinkron választást jelképező érték. Ha mindkét forrás a választás befejezése előtt befejeződött, vagy ha a CancellationToken megadott dataflowBlockOptions részt a választás befejezése előtt megszakítják, az eredményként kapott tevékenység megszakad. Ha az egyik forrás rendelkezik elérhető adatokkal, és sikeresen propagálja azt a választott helyre, az eredményként kapott feladat befejeződik, amikor a kezelő befejeződik; ha a kezelő kivételt ad ki, a tevékenység az Faulted állapotban fejeződik be, és a kezeletlen kivételt tartalmazza. Ellenkező esetben a tevékenység 0 vagy 1 értékre Result lesz állítva, hogy az első vagy a második forrást jelölje.

Kivételek

Az source1 van null.

-vagy-

Az action1 van null.

-vagy-

Az source2 van null.

-vagy-

Az action2 van null.

-vagy-

Az dataflowBlockOptions van null.

A következőre érvényes: