ParallelEnumerable.Aggregate メソッド
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
シーケンスにアキュムレータ関数を並列で適用します。
オーバーロード
Aggregate<TSource,TAccumulate,TResult>(ParallelQuery<TSource>, TAccumulate, Func<TAccumulate,TSource,TAccumulate>, Func<TAccumulate,TResult>) |
シーケンスにアキュムレータ関数を並列で適用します。 指定したシード値は最初のアキュムレータ値として使用され、指定した関数は結果値の選択に使用されます。 |
Aggregate<TSource,TAccumulate,TResult>(ParallelQuery<TSource>, Func<TAccumulate>, Func<TAccumulate,TSource,TAccumulate>, Func<TAccumulate, TAccumulate,TAccumulate>, Func<TAccumulate,TResult>) |
シーケンスにアキュムレータ関数を並列で適用します。 このオーバーロードはシーケンシャルな実装では使用できません。 |
Aggregate<TSource,TAccumulate,TResult>(ParallelQuery<TSource>, TAccumulate, Func<TAccumulate,TSource,TAccumulate>, Func<TAccumulate, TAccumulate,TAccumulate>, Func<TAccumulate,TResult>) |
シーケンスにアキュムレータ関数を並列で適用します。 このオーバーロードはシーケンシャルな実装では使用できません。 |
Aggregate<TSource,TAccumulate>(ParallelQuery<TSource>, TAccumulate, Func<TAccumulate,TSource,TAccumulate>) |
シーケンスにアキュムレータ関数を並列で適用します。 指定されたシード値が最初のアキュムレータ値として使用されます。 |
Aggregate<TSource>(ParallelQuery<TSource>, Func<TSource,TSource,TSource>) |
シーケンスにアキュムレータ関数を並列で適用します。 |
Aggregate<TSource,TAccumulate,TResult>(ParallelQuery<TSource>, TAccumulate, Func<TAccumulate,TSource,TAccumulate>, Func<TAccumulate,TResult>)
シーケンスにアキュムレータ関数を並列で適用します。 指定したシード値は最初のアキュムレータ値として使用され、指定した関数は結果値の選択に使用されます。
public:
generic <typename TSource, typename TAccumulate, typename TResult>
[System::Runtime::CompilerServices::Extension]
static TResult Aggregate(System::Linq::ParallelQuery<TSource> ^ source, TAccumulate seed, Func<TAccumulate, TSource, TAccumulate> ^ func, Func<TAccumulate, TResult> ^ resultSelector);
public static TResult Aggregate<TSource,TAccumulate,TResult> (this System.Linq.ParallelQuery<TSource> source, TAccumulate seed, Func<TAccumulate,TSource,TAccumulate> func, Func<TAccumulate,TResult> resultSelector);
static member Aggregate : System.Linq.ParallelQuery<'Source> * 'Accumulate * Func<'Accumulate, 'Source, 'Accumulate> * Func<'Accumulate, 'Result> -> 'Result
<Extension()>
Public Function Aggregate(Of TSource, TAccumulate, TResult) (source As ParallelQuery(Of TSource), seed As TAccumulate, func As Func(Of TAccumulate, TSource, TAccumulate), resultSelector As Func(Of TAccumulate, TResult)) As TResult
型パラメーター
- TSource
source
の要素の型。
- TAccumulate
アキュムレータ値の型。
- TResult
結果の値の型。
パラメーター
- source
- ParallelQuery<TSource>
集計対象のシーケンス。
- seed
- TAccumulate
最初のアキュムレータ値。
- func
- Func<TAccumulate,TSource,TAccumulate>
各要素に対して呼び出すアキュムレータ関数。
- resultSelector
- Func<TAccumulate,TResult>
最終的なアキュムレータ値を結果値に変換する関数。
戻り値
変換された最終的なアキュムレータ値。
例外
WithCancellation<TSource>(ParallelQuery<TSource>, CancellationToken) 経由で渡されたトークンで、クエリが取り消されました。
source
または func
または resultSelector
が null 参照 (Visual Basic の Nothing) です。
クエリ評価中に 1 つまたは複数の例外が発生しました。
source
に要素が含まれていません。
こちらもご覧ください
適用対象
Aggregate<TSource,TAccumulate,TResult>(ParallelQuery<TSource>, Func<TAccumulate>, Func<TAccumulate,TSource,TAccumulate>, Func<TAccumulate, TAccumulate,TAccumulate>, Func<TAccumulate,TResult>)
シーケンスにアキュムレータ関数を並列で適用します。 このオーバーロードはシーケンシャルな実装では使用できません。
public:
generic <typename TSource, typename TAccumulate, typename TResult>
[System::Runtime::CompilerServices::Extension]
static TResult Aggregate(System::Linq::ParallelQuery<TSource> ^ source, Func<TAccumulate> ^ seedFactory, Func<TAccumulate, TSource, TAccumulate> ^ updateAccumulatorFunc, Func<TAccumulate, TAccumulate, TAccumulate> ^ combineAccumulatorsFunc, Func<TAccumulate, TResult> ^ resultSelector);
public static TResult Aggregate<TSource,TAccumulate,TResult> (this System.Linq.ParallelQuery<TSource> source, Func<TAccumulate> seedFactory, Func<TAccumulate,TSource,TAccumulate> updateAccumulatorFunc, Func<TAccumulate,TAccumulate,TAccumulate> combineAccumulatorsFunc, Func<TAccumulate,TResult> resultSelector);
static member Aggregate : System.Linq.ParallelQuery<'Source> * Func<'Accumulate> * Func<'Accumulate, 'Source, 'Accumulate> * Func<'Accumulate, 'Accumulate, 'Accumulate> * Func<'Accumulate, 'Result> -> 'Result
<Extension()>
Public Function Aggregate(Of TSource, TAccumulate, TResult) (source As ParallelQuery(Of TSource), seedFactory As Func(Of TAccumulate), updateAccumulatorFunc As Func(Of TAccumulate, TSource, TAccumulate), combineAccumulatorsFunc As Func(Of TAccumulate, TAccumulate, TAccumulate), resultSelector As Func(Of TAccumulate, TResult)) As TResult
型パラメーター
- TSource
source
の要素の型。
- TAccumulate
アキュムレータ値の型。
- TResult
結果の値の型。
パラメーター
- source
- ParallelQuery<TSource>
集計対象のシーケンス。
- seedFactory
- Func<TAccumulate>
最初のアキュムレータ値を返す関数。
- updateAccumulatorFunc
- Func<TAccumulate,TSource,TAccumulate>
パーティション内の各要素に対して呼び出すアキュムレータ関数。
- combineAccumulatorsFunc
- Func<TAccumulate,TAccumulate,TAccumulate>
各パーティションから返されたアキュムレータの結果に対して呼び出すアキュムレータ関数。
- resultSelector
- Func<TAccumulate,TResult>
最終的なアキュムレータ値を結果値に変換する関数。
戻り値
変換された最終的なアキュムレータ値。
例外
WithCancellation<TSource>(ParallelQuery<TSource>, CancellationToken) 経由で渡されたトークンで、クエリが取り消されました。
source
または seedFactory
または updateAccumulatorFunc
または combineAccumulatorsFunc
または resultSelector
が null 参照 (Visual Basic の場合は Nothing) です。
クエリ評価中に 1 つまたは複数の例外が発生しました。
source
に要素が含まれていません。
注釈
このオーバーロードは、並列化されたクエリに固有です。 並列クエリでは、データ ソース シーケンスを複数のサブシーケンス (パーティション) にパーティション分割できます。 updateAccumulatorFunc
は、パーティション内の各要素で呼び出されます。 各パーティションは、1 つの累積結果を生成します。 combineAccumulatorsFunc
その後、各パーティションの結果に対して が呼び出され、1 つの要素が生成されます。 その後、この要素は 関数によって resultSelector
変換されます。
こちらもご覧ください
適用対象
Aggregate<TSource,TAccumulate,TResult>(ParallelQuery<TSource>, TAccumulate, Func<TAccumulate,TSource,TAccumulate>, Func<TAccumulate, TAccumulate,TAccumulate>, Func<TAccumulate,TResult>)
シーケンスにアキュムレータ関数を並列で適用します。 このオーバーロードはシーケンシャルな実装では使用できません。
public:
generic <typename TSource, typename TAccumulate, typename TResult>
[System::Runtime::CompilerServices::Extension]
static TResult Aggregate(System::Linq::ParallelQuery<TSource> ^ source, TAccumulate seed, Func<TAccumulate, TSource, TAccumulate> ^ updateAccumulatorFunc, Func<TAccumulate, TAccumulate, TAccumulate> ^ combineAccumulatorsFunc, Func<TAccumulate, TResult> ^ resultSelector);
public static TResult Aggregate<TSource,TAccumulate,TResult> (this System.Linq.ParallelQuery<TSource> source, TAccumulate seed, Func<TAccumulate,TSource,TAccumulate> updateAccumulatorFunc, Func<TAccumulate,TAccumulate,TAccumulate> combineAccumulatorsFunc, Func<TAccumulate,TResult> resultSelector);
static member Aggregate : System.Linq.ParallelQuery<'Source> * 'Accumulate * Func<'Accumulate, 'Source, 'Accumulate> * Func<'Accumulate, 'Accumulate, 'Accumulate> * Func<'Accumulate, 'Result> -> 'Result
<Extension()>
Public Function Aggregate(Of TSource, TAccumulate, TResult) (source As ParallelQuery(Of TSource), seed As TAccumulate, updateAccumulatorFunc As Func(Of TAccumulate, TSource, TAccumulate), combineAccumulatorsFunc As Func(Of TAccumulate, TAccumulate, TAccumulate), resultSelector As Func(Of TAccumulate, TResult)) As TResult
型パラメーター
- TSource
source
の要素の型。
- TAccumulate
アキュムレータ値の型。
- TResult
結果の値の型。
パラメーター
- source
- ParallelQuery<TSource>
集計対象のシーケンス。
- seed
- TAccumulate
最初のアキュムレータ値。
- updateAccumulatorFunc
- Func<TAccumulate,TSource,TAccumulate>
パーティション内の各要素に対して呼び出すアキュムレータ関数。
- combineAccumulatorsFunc
- Func<TAccumulate,TAccumulate,TAccumulate>
各パーティションから返されたアキュムレータの結果に対して呼び出すアキュムレータ関数。
- resultSelector
- Func<TAccumulate,TResult>
最終的なアキュムレータ値を結果値に変換する関数。
戻り値
変換された最終的なアキュムレータ値。
例外
WithCancellation<TSource>(ParallelQuery<TSource>, CancellationToken) 経由で渡されたトークンで、クエリが取り消されました。
source
または updateAccumulatorFunc
または combineAccumulatorsFunc
または resultSelector
が null 参照 (Visual Basic の Nothing) です。
クエリ評価中に 1 つまたは複数の例外が発生しました。
source
に要素が含まれていません。
注釈
このオーバーロードは、並列化されたクエリの処理に固有です。 並列クエリでは、データ ソース シーケンスを複数のサブシーケンス (パーティション) にパーティション分割できます。 updateAccumulatorFunc
は、パーティション内の各要素で呼び出されます。 各パーティションは、1 つの累積結果を生成します。 combineAccumulatorsFunc
その後、各パーティションの結果に対して が呼び出され、1 つの要素が生成されます。 その後、この要素は 関数によって resultSelector
変換されます。
こちらもご覧ください
適用対象
Aggregate<TSource,TAccumulate>(ParallelQuery<TSource>, TAccumulate, Func<TAccumulate,TSource,TAccumulate>)
シーケンスにアキュムレータ関数を並列で適用します。 指定されたシード値が最初のアキュムレータ値として使用されます。
public:
generic <typename TSource, typename TAccumulate>
[System::Runtime::CompilerServices::Extension]
static TAccumulate Aggregate(System::Linq::ParallelQuery<TSource> ^ source, TAccumulate seed, Func<TAccumulate, TSource, TAccumulate> ^ func);
public static TAccumulate Aggregate<TSource,TAccumulate> (this System.Linq.ParallelQuery<TSource> source, TAccumulate seed, Func<TAccumulate,TSource,TAccumulate> func);
static member Aggregate : System.Linq.ParallelQuery<'Source> * 'Accumulate * Func<'Accumulate, 'Source, 'Accumulate> -> 'Accumulate
<Extension()>
Public Function Aggregate(Of TSource, TAccumulate) (source As ParallelQuery(Of TSource), seed As TAccumulate, func As Func(Of TAccumulate, TSource, TAccumulate)) As TAccumulate
型パラメーター
- TSource
source
の要素の型。
- TAccumulate
アキュムレータ値の型。
パラメーター
- source
- ParallelQuery<TSource>
集計対象のシーケンス。
- seed
- TAccumulate
最初のアキュムレータ値。
- func
- Func<TAccumulate,TSource,TAccumulate>
各要素に対して呼び出すアキュムレータ関数。
戻り値
最終的なアキュムレータ値。
例外
WithCancellation<TSource>(ParallelQuery<TSource>, CancellationToken) 経由で渡されたトークンで、クエリが取り消されました。
source
または func
が null 参照 (Visual Basic の場合は Nothing) です。
クエリ評価中に 1 つまたは複数の例外が発生しました。
source
に要素が含まれていません。
こちらもご覧ください
適用対象
Aggregate<TSource>(ParallelQuery<TSource>, Func<TSource,TSource,TSource>)
シーケンスにアキュムレータ関数を並列で適用します。
public:
generic <typename TSource>
[System::Runtime::CompilerServices::Extension]
static TSource Aggregate(System::Linq::ParallelQuery<TSource> ^ source, Func<TSource, TSource, TSource> ^ func);
public static TSource Aggregate<TSource> (this System.Linq.ParallelQuery<TSource> source, Func<TSource,TSource,TSource> func);
static member Aggregate : System.Linq.ParallelQuery<'Source> * Func<'Source, 'Source, 'Source> -> 'Source
<Extension()>
Public Function Aggregate(Of TSource) (source As ParallelQuery(Of TSource), func As Func(Of TSource, TSource, TSource)) As TSource
型パラメーター
- TSource
source
の要素の型。
パラメーター
- source
- ParallelQuery<TSource>
集計対象のシーケンス。
- func
- Func<TSource,TSource,TSource>
各要素に対して呼び出すアキュムレータ関数。
戻り値
最終的なアキュムレータ値。
例外
WithCancellation<TSource>(ParallelQuery<TSource>, CancellationToken) 経由で渡されたトークンで、クエリが取り消されました。
source
または func
が null 参照 (Visual Basic の場合は Nothing) です。
クエリ評価中に 1 つまたは複数の例外が発生しました。
source
に要素が含まれていません。
こちらもご覧ください
適用対象
.NET