DataflowBlock.Choose Metoda
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Přetížení
| Name | Description |
|---|---|
| Choose<T1,T2,T3>(ISourceBlock<T1>, Action<T1>, ISourceBlock<T2>, Action<T2>, ISourceBlock<T3>, Action<T3>) |
Monitoruje tři zdroje toku dat a vyvolá zadanou obslužnou rutinu pro jakýkoli zdroj, který zpřístupňuje data jako první. |
| Choose<T1,T2,T3>(ISourceBlock<T1>, Action<T1>, ISourceBlock<T2>, Action<T2>, ISourceBlock<T3>, Action<T3>, DataflowBlockOptions) |
Monitoruje tři zdroje toku dat a vyvolá zadanou obslužnou rutinu pro jakýkoli zdroj, který zpřístupňuje data jako první. |
| Choose<T1,T2>(ISourceBlock<T1>, Action<T1>, ISourceBlock<T2>, Action<T2>) |
Monitoruje dva zdroje toku dat a vyvolá zadanou obslužnou rutinu pro jakýkoli zdroj, který zpřístupňuje data jako první. |
| Choose<T1,T2>(ISourceBlock<T1>, Action<T1>, ISourceBlock<T2>, Action<T2>, DataflowBlockOptions) |
Monitoruje dva zdroje toku dat a vyvolá zadanou obslužnou rutinu pro jakýkoli zdroj, který zpřístupňuje data jako první. |
Choose<T1,T2,T3>(ISourceBlock<T1>, Action<T1>, ISourceBlock<T2>, Action<T2>, ISourceBlock<T3>, Action<T3>)
- Zdroj:
- DataflowBlock.cs
- Zdroj:
- DataflowBlock.cs
- Zdroj:
- DataflowBlock.cs
- Zdroj:
- DataflowBlock.cs
- Zdroj:
- DataflowBlock.cs
- Zdroj:
- DataflowBlock.cs
- Zdroj:
- DataflowBlock.cs
Monitoruje tři zdroje toku dat a vyvolá zadanou obslužnou rutinu pro jakýkoli zdroj, který zpřístupňuje data jako první.
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
Určuje typ dat obsažených v prvním zdroji.
- T2
Určuje typ dat obsažených ve druhém zdroji.
- T3
Určuje typ dat obsažených ve třetím zdroji.
Parametry
- source1
- ISourceBlock<T1>
První zdroj.
- action1
- Action<T1>
Obslužná rutina, která se má spouštět na datech z prvního zdroje.
- source2
- ISourceBlock<T2>
Druhý zdroj.
- action2
- Action<T2>
Obslužná rutina, která se má spouštět na datech z druhého zdroje.
- source3
- ISourceBlock<T3>
Třetí zdroj.
- action3
- Action<T3>
Obslužná rutina, která se má spouštět na datech z třetího zdroje.
Návraty
A Task<TResult> , který představuje asynchronní volbu. Pokud jsou před dokončením výběru dokončeny všechny zdroje, bude výsledný úkol zrušen. Pokud některý ze zdrojů obsahuje data k dispozici a úspěšně ho rozšíří na volbu, výsledná úloha se dokončí po dokončení obslužné rutiny; Pokud obslužná rutina vyvolá výjimku, úloha skončí ve Faulted stavu a bude obsahovat neošetřenou výjimku. V opačném případě bude úkol končit jeho Result nastavenou na 0 index zdroje.
Tato metoda bude využívat pouze prvek z jednoho ze zdrojů dat, nikdy více než jeden.
Výjimky
To source1 je null.
nebo
To action1 je null.
nebo
To source2 je null.
nebo
To action2 je null.
nebo
To source3 je null.
nebo
To action3 je null.
Platí pro
Choose<T1,T2,T3>(ISourceBlock<T1>, Action<T1>, ISourceBlock<T2>, Action<T2>, ISourceBlock<T3>, Action<T3>, DataflowBlockOptions)
- Zdroj:
- DataflowBlock.cs
- Zdroj:
- DataflowBlock.cs
- Zdroj:
- DataflowBlock.cs
- Zdroj:
- DataflowBlock.cs
- Zdroj:
- DataflowBlock.cs
- Zdroj:
- DataflowBlock.cs
- Zdroj:
- DataflowBlock.cs
Monitoruje tři zdroje toku dat a vyvolá zadanou obslužnou rutinu pro jakýkoli zdroj, který zpřístupňuje data jako první.
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
Určuje typ dat obsažených v prvním zdroji.
- T2
Určuje typ dat obsažených ve druhém zdroji.
- T3
Určuje typ dat obsažených ve třetím zdroji.
Parametry
- source1
- ISourceBlock<T1>
První zdroj.
- action1
- Action<T1>
Obslužná rutina, která se má spouštět na datech z prvního zdroje.
- source2
- ISourceBlock<T2>
Druhý zdroj.
- action2
- Action<T2>
Obslužná rutina, která se má spouštět na datech z druhého zdroje.
- source3
- ISourceBlock<T3>
Třetí zdroj.
- action3
- Action<T3>
Obslužná rutina, která se má spouštět na datech z třetího zdroje.
- dataflowBlockOptions
- DataflowBlockOptions
Možnosti, se kterými chcete tuto volbu nakonfigurovat.
Návraty
A Task<TResult> , který představuje asynchronní volbu. Pokud jsou před dokončením volby dokončeny všechny zdroje nebo pokud CancellationToken jsou před dokončením výběru zrušeny zadané zdroje dataflowBlockOptions , bude výsledný úkol zrušen. Pokud některý ze zdrojů obsahuje data k dispozici a úspěšně ho rozšíří na volbu, výsledná úloha se dokončí po dokončení obslužné rutiny; Pokud obslužná rutina vyvolá výjimku, úloha skončí ve Faulted stavu a bude obsahovat neošetřenou výjimku. V opačném případě bude úkol končit jeho Result nastavenou na 0 index zdroje.
Tato metoda bude využívat pouze prvek z jednoho ze zdrojů dat, nikdy více než jeden. Pokud je zrušení požadováno po přijetí elementu, požadavek zrušení bude ignorován a příslušná obslužná rutina bude moci provést.
Výjimky
To source1 je null.
nebo
To action1 je null.
nebo
To source2 je null.
nebo
To action2 je null.
nebo
To source3 je null.
nebo
To action3 je null.
nebo
To dataflowBlockOptions je null.
Platí pro
Choose<T1,T2>(ISourceBlock<T1>, Action<T1>, ISourceBlock<T2>, Action<T2>)
- Zdroj:
- DataflowBlock.cs
- Zdroj:
- DataflowBlock.cs
- Zdroj:
- DataflowBlock.cs
- Zdroj:
- DataflowBlock.cs
- Zdroj:
- DataflowBlock.cs
- Zdroj:
- DataflowBlock.cs
- Zdroj:
- DataflowBlock.cs
Monitoruje dva zdroje toku dat a vyvolá zadanou obslužnou rutinu pro jakýkoli zdroj, který zpřístupňuje data jako první.
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
Určuje typ dat obsažených v prvním zdroji.
- T2
Určuje typ dat obsažených ve druhém zdroji.
Parametry
- source1
- ISourceBlock<T1>
První zdroj.
- action1
- Action<T1>
Obslužná rutina, která se má spouštět na datech z prvního zdroje.
- source2
- ISourceBlock<T2>
Druhý zdroj.
- action2
- Action<T2>
Obslužná rutina, která se má spouštět na datech z druhého zdroje.
Návraty
A Task<TResult> , který představuje asynchronní volbu. Pokud jsou oba zdroje dokončeny před dokončením volby, bude výsledný úkol zrušen. Pokud některý ze zdrojů obsahuje data k dispozici a úspěšně ho rozšíří na volbu, výsledná úloha se dokončí po dokončení obslužné rutiny; Pokud obslužná rutina vyvolá výjimku, úloha skončí ve Faulted stavu a bude obsahovat neošetřenou výjimku. V opačném případě bude úkol končit nastavenou Result na hodnotu 0 nebo 1, aby představoval první nebo druhý zdroj.
Tato metoda bude využívat pouze prvek z jednoho ze dvou zdrojů dat, nikdy obojí.
Výjimky
To source1 je null.
nebo
To action1 je null.
nebo
To source2 je null.
nebo
To action2 je null.
Platí pro
Choose<T1,T2>(ISourceBlock<T1>, Action<T1>, ISourceBlock<T2>, Action<T2>, DataflowBlockOptions)
- Zdroj:
- DataflowBlock.cs
- Zdroj:
- DataflowBlock.cs
- Zdroj:
- DataflowBlock.cs
- Zdroj:
- DataflowBlock.cs
- Zdroj:
- DataflowBlock.cs
- Zdroj:
- DataflowBlock.cs
- Zdroj:
- DataflowBlock.cs
Monitoruje dva zdroje toku dat a vyvolá zadanou obslužnou rutinu pro jakýkoli zdroj, který zpřístupňuje data jako první.
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
Určuje typ dat obsažených v prvním zdroji.
- T2
Určuje typ dat obsažených ve druhém zdroji.
Parametry
- source1
- ISourceBlock<T1>
První zdroj.
- action1
- Action<T1>
Obslužná rutina, která se má spouštět na datech z prvního zdroje.
- source2
- ISourceBlock<T2>
Druhý zdroj.
- action2
- Action<T2>
Obslužná rutina, která se má spouštět na datech z druhého zdroje.
- dataflowBlockOptions
- DataflowBlockOptions
Možnosti, se kterými chcete tuto volbu nakonfigurovat.
Návraty
A Task<TResult> , který představuje asynchronní volbu. Pokud jsou oba zdroje dokončeny před dokončením volby nebo pokud CancellationToken je zadaný jako součást dataflowBlockOptions zrušen před dokončením výběru, bude výsledný úkol zrušen. Pokud některý ze zdrojů obsahuje data k dispozici a úspěšně ho rozšíří na volbu, výsledná úloha se dokončí po dokončení obslužné rutiny; Pokud obslužná rutina vyvolá výjimku, úloha skončí ve Faulted stavu a bude obsahovat neošetřenou výjimku. V opačném případě bude úkol končit nastavenou Result na hodnotu 0 nebo 1, aby představoval první nebo druhý zdroj.
Výjimky
To source1 je null.
nebo
To action1 je null.
nebo
To source2 je null.
nebo
To action2 je null.
nebo
To dataflowBlockOptions je null.