ParallelEnumerable::Aggregate<TSource, TAccumulate, TResult> Method (ParallelQuery<TSource>^, TAccumulate, Func<TAccumulate, TSource, TAccumulate>^, Func<TAccumulate, TResult>^)
Applies in parallel an accumulator function over a sequence. The specified seed value is used as the initial accumulator value, and the specified function is used to select the result value.
Assembly: System.Core (in System.Core.dll)
public: generic<typename TSource, typename TAccumulate, typename TResult> [ExtensionAttribute] static TResult Aggregate( ParallelQuery<TSource>^ source, TAccumulate seed, Func<TAccumulate, TSource, TAccumulate>^ func, Func<TAccumulate, TResult>^ resultSelector )
Parameters
- source
-
Type:
System.Linq::ParallelQuery<TSource>^
A sequence to aggregate over.
- seed
-
Type:
TAccumulate
The initial accumulator value.
- func
-
Type:
System::Func<TAccumulate, TSource, TAccumulate>^
An accumulator function to be invoked on each element.
- resultSelector
-
Type:
System::Func<TAccumulate, TResult>^
A function to transform the final accumulator value into the result value.
Return Value
Type: TResultThe transformed final accumulator value.
Type Parameters
- TSource
The type of the elements of source.
- TAccumulate
The type of the accumulator value.
- TResult
The type of the resulting value.
| Exception | Condition |
|---|---|
| OperationCanceledException | The query was canceled with the token passed in through WithCancellation. |
| ArgumentNullException | source or func or resultSelector is a null reference (Nothing in Visual Basic). |
| AggregateException | One or more exceptions occurred during the evaluation of the query. |
| InvalidOperationException | source contains no elements. |
Available since 8
.NET Framework
Available since 4.0
Portable Class Library
Supported in: portable .NET platforms
Windows Phone
Available since 8.1