다음을 통해 공유


ParallelEnumerable.Aggregate 메서드

정의

시퀀스에 대해 누적기 함수를 병렬로 적용합니다.

오버로드

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>)

Source:
ParallelEnumerable.cs
Source:
ParallelEnumerable.cs
Source:
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>

최종 누적기 값을 결과 값으로 변환하는 함수입니다.

반환

TResult

변환된 최종 누적기 값입니다.

예외

source 또는 func 또는 resultSelector는 null 참조(Visual Basic에서는 Nothing)입니다.

쿼리를 확인하는 동안 하나 이상의 예외가 발생했습니다.

source에 요소가 없는 경우

추가 정보

적용 대상

Aggregate<TSource,TAccumulate,TResult>(ParallelQuery<TSource>, Func<TAccumulate>, Func<TAccumulate,TSource,TAccumulate>, Func<TAccumulate, TAccumulate,TAccumulate>, Func<TAccumulate,TResult>)

Source:
ParallelEnumerable.cs
Source:
ParallelEnumerable.cs
Source:
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>

최종 누적기 값을 결과 값으로 변환하는 함수입니다.

반환

TResult

변환된 최종 누적기 값입니다.

예외

source 또는 seedFactory 또는 updateAccumulatorFunc 또는 combineAccumulatorsFunc 또는 resultSelector가 null 참조인 경우(Visual Basic에서는 Nothing).

쿼리를 확인하는 동안 하나 이상의 예외가 발생했습니다.

source에 요소가 없는 경우

설명

이 오버로드는 병렬 처리된 쿼리에만 적용됩니다. 병렬화된 쿼리는 데이터 원본 시퀀스를 여러 하위 시퀀스(파티션)로 분할할 수 있습니다. 는 updateAccumulatorFunc 파티션 내의 각 요소에서 호출됩니다. 각 파티션은 누적된 단일 결과를 생성합니다. combineAccumulatorsFunc 그런 다음 각 파티션의 결과에 대해 가 호출되어 단일 요소를 생성합니다. 그런 다음 이 요소는 함수에 의해 변환됩니다 resultSelector .

추가 정보

적용 대상

Aggregate<TSource,TAccumulate,TResult>(ParallelQuery<TSource>, TAccumulate, Func<TAccumulate,TSource,TAccumulate>, Func<TAccumulate, TAccumulate,TAccumulate>, Func<TAccumulate,TResult>)

Source:
ParallelEnumerable.cs
Source:
ParallelEnumerable.cs
Source:
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>

최종 누적기 값을 결과 값으로 변환하는 함수입니다.

반환

TResult

변환된 최종 누적기 값입니다.

예외

source 또는 updateAccumulatorFunc 또는 combineAccumulatorsFunc 또는 resultSelector는 null 참조(Visual Basic에서는 Nothing)입니다.

쿼리를 확인하는 동안 하나 이상의 예외가 발생했습니다.

source에 요소가 없는 경우

설명

이 오버로드는 병렬 처리된 쿼리를 처리하는 데만 적용됩니다. 병렬화된 쿼리는 데이터 원본 시퀀스를 여러 하위 시퀀스(파티션)로 분할할 수 있습니다. 는 updateAccumulatorFunc 파티션 내의 각 요소에서 호출됩니다. 각 파티션은 누적된 단일 결과를 생성합니다. combineAccumulatorsFunc 그런 다음 각 파티션의 결과에 대해 가 호출되어 단일 요소를 생성합니다. 그런 다음 이 요소는 함수에 의해 변환됩니다 resultSelector .

추가 정보

적용 대상

Aggregate<TSource,TAccumulate>(ParallelQuery<TSource>, TAccumulate, Func<TAccumulate,TSource,TAccumulate>)

Source:
ParallelEnumerable.cs
Source:
ParallelEnumerable.cs
Source:
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>

각 요소에 대해 호출할 누적기 함수입니다.

반환

TAccumulate

최종 누적기 값입니다.

예외

source 또는 func가 null 참조(Visual Basic의 경우 Nothing)인 경우

쿼리를 확인하는 동안 하나 이상의 예외가 발생했습니다.

source에 요소가 없는 경우

추가 정보

적용 대상

Aggregate<TSource>(ParallelQuery<TSource>, Func<TSource,TSource,TSource>)

Source:
ParallelEnumerable.cs
Source:
ParallelEnumerable.cs
Source:
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>

각 요소에 대해 호출할 누적기 함수입니다.

반환

TSource

최종 누적기 값입니다.

예외

source 또는 func가 null 참조(Visual Basic의 경우 Nothing)인 경우

쿼리를 확인하는 동안 하나 이상의 예외가 발생했습니다.

source에 요소가 없는 경우

추가 정보

적용 대상