ParallelEnumerable.Aggregate Метод
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Параллельно применяет к последовательности агрегатную функцию.
Перегрузки
Aggregate<TSource,TAccumulate,TResult>(ParallelQuery<TSource>, TAccumulate, Func<TAccumulate,TSource,TAccumulate>, Func<TAccumulate,TResult>)
- Исходный код:
- ParallelEnumerable.cs
- Исходный код:
- ParallelEnumerable.cs
- Исходный код:
- ParallelEnumerable.cs
Параллельно применяет к последовательности агрегатную функцию. Указанное начальное значение служит исходным значением для агрегатной операции, а указанная функция используется для выбора результирующего значения.
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
является пустой ссылкой (Nothing в Visual Basic).
При оценке запроса получено одно или несколько исключений.
Последовательность source
не содержит элементов.
См. также раздел
Применяется к
Aggregate<TSource,TAccumulate,TResult>(ParallelQuery<TSource>, Func<TAccumulate>, Func<TAccumulate,TSource,TAccumulate>, Func<TAccumulate, TAccumulate,TAccumulate>, Func<TAccumulate,TResult>)
- Исходный код:
- ParallelEnumerable.cs
- Исходный код:
- ParallelEnumerable.cs
- Исходный код:
- ParallelEnumerable.cs
Параллельно применяет к последовательности агрегатную функцию. Эта перегрузка недоступна в последовательной реализации.
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
является пустой ссылкой (Nothing в Visual Basic).
При оценке запроса получено одно или несколько исключений.
Последовательность source
не содержит элементов.
Комментарии
Эта перегрузка связана с параллельными запросами. Параллельный запрос может разделить последовательность источников данных на несколько вложенных последовательностей (секций). Вызывается updateAccumulatorFunc
для каждого элемента в секциях. Затем каждая секция получает один накопленный результат. combineAccumulatorsFunc
Затем вызывается в результатах каждой секции, чтобы получить один элемент. Затем этот элемент преобразуется функцией resultSelector
.
См. также раздел
Применяется к
Aggregate<TSource,TAccumulate,TResult>(ParallelQuery<TSource>, TAccumulate, Func<TAccumulate,TSource,TAccumulate>, Func<TAccumulate, TAccumulate,TAccumulate>, Func<TAccumulate,TResult>)
- Исходный код:
- ParallelEnumerable.cs
- Исходный код:
- ParallelEnumerable.cs
- Исходный код:
- ParallelEnumerable.cs
Параллельно применяет к последовательности агрегатную функцию. Эта перегрузка недоступна в последовательной реализации.
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
является пустой ссылкой (Nothing в Visual Basic).
При оценке запроса получено одно или несколько исключений.
Последовательность source
не содержит элементов.
Комментарии
Эта перегрузка связана с обработкой параллельного запроса. Параллельный запрос может разделить последовательность источников данных на несколько вложенных последовательностей (секций). Вызывается updateAccumulatorFunc
для каждого элемента в секциях. Затем каждая секция получает один накопленный результат. combineAccumulatorsFunc
Затем вызывается в результатах каждой секции, чтобы получить один элемент. Затем этот элемент преобразуется функцией resultSelector
.
См. также раздел
Применяется к
Aggregate<TSource,TAccumulate>(ParallelQuery<TSource>, TAccumulate, Func<TAccumulate,TSource,TAccumulate>)
- Исходный код:
- ParallelEnumerable.cs
- Исходный код:
- ParallelEnumerable.cs
- Исходный код:
- ParallelEnumerable.cs
Параллельно применяет к последовательности агрегатную функцию. Указанное начальное значение используется в качестве исходного значения агрегатной операции.
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
— это пустая ссылка (Nothing в Visual Basic).
При оценке запроса получено одно или несколько исключений.
Последовательность source
не содержит элементов.
См. также раздел
Применяется к
Aggregate<TSource>(ParallelQuery<TSource>, Func<TSource,TSource,TSource>)
- Исходный код:
- ParallelEnumerable.cs
- Исходный код:
- ParallelEnumerable.cs
- Исходный код:
- ParallelEnumerable.cs
Параллельно применяет к последовательности агрегатную функцию.
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
— это пустая ссылка (Nothing в Visual Basic).
При оценке запроса получено одно или несколько исключений.
Последовательность source
не содержит элементов.