DataflowBlock.Choose メソッド

定義

オーバーロード

名前 説明
Choose<T1,T2,T3>(ISourceBlock<T1>, Action<T1>, ISourceBlock<T2>, Action<T2>, ISourceBlock<T3>, Action<T3>)

3 つのデータフロー ソースを監視し、指定されたハンドラーを呼び出して、最初にデータを使用可能にするソースを指定します。

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

3 つのデータフロー ソースを監視し、指定されたハンドラーを呼び出して、最初にデータを使用可能にするソースを指定します。

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

2 つのデータフロー ソースを監視し、指定されたハンドラーを呼び出して、最初にデータを使用可能にするソースを指定します。

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

2 つのデータフロー ソースを監視し、指定されたハンドラーを呼び出して、最初にデータを使用可能にするソースを指定します。

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

ソース:
DataflowBlock.cs
ソース:
DataflowBlock.cs
ソース:
DataflowBlock.cs
ソース:
DataflowBlock.cs
ソース:
DataflowBlock.cs
ソース:
DataflowBlock.cs
ソース:
DataflowBlock.cs

3 つのデータフロー ソースを監視し、指定されたハンドラーを呼び出して、最初にデータを使用可能にするソースを指定します。

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)

型パラメーター

T1

最初のソースに含まれるデータの種類を指定します。

T2

2 番目のソースに含まれるデータの種類を指定します。

T3

3 番目のソースに含まれるデータの種類を指定します。

パラメーター

source1
ISourceBlock<T1>

1 番目のソース。

action1
Action<T1>

最初のソースのデータに対して実行するハンドラー。

source2
ISourceBlock<T2>

2 番目のソース。

action2
Action<T2>

2 番目のソースからのデータに対して実行するハンドラー。

source3
ISourceBlock<T3>

3 番目のソース。

action3
Action<T3>

3 番目のソースからのデータに対して実行するハンドラー。

返品

非同期選択を表す Task<TResult> 。 選択が完了する前にすべてのソースが完了した場合、結果のタスクは取り消されます。 いずれかのソースに使用可能なデータがあり、そのデータが選択に正常に反映されると、結果のタスクはハンドラーの完了時に完了します。ハンドラーが例外をスローした場合、タスクは Faulted 状態で終了し、未処理の例外が含まれます。 それ以外の場合、タスクは、その Result がソースの 0 から始まるインデックスに設定された状態で終了します。

このメソッドは、1 つのデータ ソースからの要素のみを使用し、複数の要素を使用することはありません。

例外

source1null です。

-又は-

action1null です。

-又は-

source2null です。

-又は-

action2null です。

-又は-

source3null です。

-又は-

action3null です。

適用対象

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

ソース:
DataflowBlock.cs
ソース:
DataflowBlock.cs
ソース:
DataflowBlock.cs
ソース:
DataflowBlock.cs
ソース:
DataflowBlock.cs
ソース:
DataflowBlock.cs
ソース:
DataflowBlock.cs

3 つのデータフロー ソースを監視し、指定されたハンドラーを呼び出して、最初にデータを使用可能にするソースを指定します。

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)

型パラメーター

T1

最初のソースに含まれるデータの種類を指定します。

T2

2 番目のソースに含まれるデータの種類を指定します。

T3

3 番目のソースに含まれるデータの種類を指定します。

パラメーター

source1
ISourceBlock<T1>

1 番目のソース。

action1
Action<T1>

最初のソースのデータに対して実行するハンドラー。

source2
ISourceBlock<T2>

2 番目のソース。

action2
Action<T2>

2 番目のソースからのデータに対して実行するハンドラー。

source3
ISourceBlock<T3>

3 番目のソース。

action3
Action<T3>

3 番目のソースからのデータに対して実行するハンドラー。

dataflowBlockOptions
DataflowBlockOptions

この選択を構成するオプション。

返品

非同期選択を表す Task<TResult> 。 選択が完了する前にすべてのソースが完了した場合、または選択が完了する前にCancellationTokenの一部として提供されたdataflowBlockOptionsが取り消された場合、結果のタスクは取り消されます。 いずれかのソースに使用可能なデータがあり、そのデータが選択に正常に反映されると、結果のタスクはハンドラーの完了時に完了します。ハンドラーが例外をスローした場合、タスクは Faulted 状態で終了し、未処理の例外が含まれます。 それ以外の場合、タスクは、その Result がソースの 0 から始まるインデックスに設定された状態で終了します。

このメソッドは、1 つのデータ ソースからの要素のみを使用し、複数の要素を使用することはありません。 要素の受信後に取り消しが要求された場合、キャンセル要求は無視され、関連するハンドラーの実行が許可されます。

例外

source1null です。

-又は-

action1null です。

-又は-

source2null です。

-又は-

action2null です。

-又は-

source3null です。

-又は-

action3null です。

-又は-

dataflowBlockOptionsnull です。

適用対象

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

ソース:
DataflowBlock.cs
ソース:
DataflowBlock.cs
ソース:
DataflowBlock.cs
ソース:
DataflowBlock.cs
ソース:
DataflowBlock.cs
ソース:
DataflowBlock.cs
ソース:
DataflowBlock.cs

2 つのデータフロー ソースを監視し、指定されたハンドラーを呼び出して、最初にデータを使用可能にするソースを指定します。

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)

型パラメーター

T1

最初のソースに含まれるデータの種類を指定します。

T2

2 番目のソースに含まれるデータの種類を指定します。

パラメーター

source1
ISourceBlock<T1>

1 番目のソース。

action1
Action<T1>

最初のソースのデータに対して実行するハンドラー。

source2
ISourceBlock<T2>

2 番目のソース。

action2
Action<T2>

2 番目のソースからのデータに対して実行するハンドラー。

返品

非同期選択を表す Task<TResult> 。 選択が完了する前に両方のソースが完了した場合、結果のタスクは取り消されます。 いずれかのソースに使用可能なデータがあり、そのデータが選択に正常に反映されると、結果のタスクはハンドラーの完了時に完了します。ハンドラーが例外をスローした場合、タスクは Faulted 状態で終了し、未処理の例外が含まれます。 それ以外の場合、タスクは、1 番目または 2 番目のソースをそれぞれ表す 0 または 1 に設定された Result で終了します。

このメソッドは、2 つのデータ ソースのいずれか 1 つの要素のみを使用し、両方を使用することはありません。

例外

source1null です。

-又は-

action1null です。

-又は-

source2null です。

-又は-

action2null です。

適用対象

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

ソース:
DataflowBlock.cs
ソース:
DataflowBlock.cs
ソース:
DataflowBlock.cs
ソース:
DataflowBlock.cs
ソース:
DataflowBlock.cs
ソース:
DataflowBlock.cs
ソース:
DataflowBlock.cs

2 つのデータフロー ソースを監視し、指定されたハンドラーを呼び出して、最初にデータを使用可能にするソースを指定します。

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)

型パラメーター

T1

最初のソースに含まれるデータの種類を指定します。

T2

2 番目のソースに含まれるデータの種類を指定します。

パラメーター

source1
ISourceBlock<T1>

1 番目のソース。

action1
Action<T1>

最初のソースのデータに対して実行するハンドラー。

source2
ISourceBlock<T2>

2 番目のソース。

action2
Action<T2>

2 番目のソースからのデータに対して実行するハンドラー。

dataflowBlockOptions
DataflowBlockOptions

この選択を構成するオプション。

返品

非同期選択を表す Task<TResult> 。 選択が完了する前に両方のソースが完了した場合、または選択が完了する前にCancellationTokenの一部として提供されたdataflowBlockOptionsが取り消された場合、結果のタスクは取り消されます。 いずれかのソースに使用可能なデータがあり、そのデータが選択に正常に反映されると、結果のタスクはハンドラーの完了時に完了します。ハンドラーが例外をスローした場合、タスクは Faulted 状態で終了し、未処理の例外が含まれます。 それ以外の場合、タスクは、1 番目または 2 番目のソースをそれぞれ表す 0 または 1 に設定された Result で終了します。

例外

source1null です。

-又は-

action1null です。

-又は-

source2null です。

-又は-

action2null です。

-又は-

dataflowBlockOptionsnull です。

適用対象