ParallelEnumerable.GroupJoin メソッド

定義

キーが等しいかどうかに基づいて 2 つのシーケンスの要素を並列で相互に関連付け、その結果をグループ化します。

オーバーロード

GroupJoin<TOuter,TInner,TKey,TResult>(ParallelQuery<TOuter>, IEnumerable<TInner>, Func<TOuter,TKey>, Func<TInner,TKey>, Func<TOuter,IEnumerable<TInner>, TResult>)
古い.

この GroupJoin オーバーロードは呼び出さないでください。 このメソッドは互換性のために残されており、呼び出すと常に NotSupportedException をスローします。

GroupJoin<TOuter,TInner,TKey,TResult>(ParallelQuery<TOuter>, ParallelQuery<TInner>, Func<TOuter,TKey>, Func<TInner,TKey>, Func<TOuter,IEnumerable<TInner>, TResult>)

キーが等しいかどうかに基づいて 2 つのシーケンスの要素を並列で相互に関連付け、その結果をグループ化します。 キーの比較には既定の等値比較子が使用されます。

GroupJoin<TOuter,TInner,TKey,TResult>(ParallelQuery<TOuter>, IEnumerable<TInner>, Func<TOuter,TKey>, Func<TInner,TKey>, Func<TOuter,IEnumerable<TInner>, TResult>, IEqualityComparer<TKey>)
古い.

この GroupJoin オーバーロードは呼び出さないでください。 このメソッドは互換性のために残されており、呼び出すと常に NotSupportedException をスローします。

GroupJoin<TOuter,TInner,TKey,TResult>(ParallelQuery<TOuter>, ParallelQuery<TInner>, Func<TOuter,TKey>, Func<TInner,TKey>, Func<TOuter,IEnumerable<TInner>, TResult>, IEqualityComparer<TKey>)

キーが等しいかどうかに基づいて 2 つのシーケンスの要素を並列で相互に関連付け、その結果をグループ化します。 指定された IEqualityComparer<T> を使用してキーを比較します。

GroupJoin<TOuter,TInner,TKey,TResult>(ParallelQuery<TOuter>, IEnumerable<TInner>, Func<TOuter,TKey>, Func<TInner,TKey>, Func<TOuter,IEnumerable<TInner>, TResult>)

ソース:
ParallelEnumerable.cs
ソース:
ParallelEnumerable.cs
ソース:
ParallelEnumerable.cs

注意事項

The second data source of a binary operator must be of type System.Linq.ParallelQuery<T> rather than System.Collections.Generic.IEnumerable<T>. To fix this problem, use the AsParallel() extension method to convert the right data source to System.Linq.ParallelQuery<T>.

この GroupJoin オーバーロードは呼び出さないでください。 このメソッドは互換性のために残されており、呼び出すと常に NotSupportedException をスローします。

public:
generic <typename TOuter, typename TInner, typename TKey, typename TResult>
[System::Runtime::CompilerServices::Extension]
 static System::Linq::ParallelQuery<TResult> ^ GroupJoin(System::Linq::ParallelQuery<TOuter> ^ outer, System::Collections::Generic::IEnumerable<TInner> ^ inner, Func<TOuter, TKey> ^ outerKeySelector, Func<TInner, TKey> ^ innerKeySelector, Func<TOuter, System::Collections::Generic::IEnumerable<TInner> ^, TResult> ^ resultSelector);
[System.Obsolete("The second data source of a binary operator must be of type System.Linq.ParallelQuery<T> rather than System.Collections.Generic.IEnumerable<T>. To fix this problem, use the AsParallel() extension method to convert the right data source to System.Linq.ParallelQuery<T>.")]
public static System.Linq.ParallelQuery<TResult> GroupJoin<TOuter,TInner,TKey,TResult> (this System.Linq.ParallelQuery<TOuter> outer, System.Collections.Generic.IEnumerable<TInner> inner, Func<TOuter,TKey> outerKeySelector, Func<TInner,TKey> innerKeySelector, Func<TOuter,System.Collections.Generic.IEnumerable<TInner>,TResult> resultSelector);
[<System.Obsolete("The second data source of a binary operator must be of type System.Linq.ParallelQuery<T> rather than System.Collections.Generic.IEnumerable<T>. To fix this problem, use the AsParallel() extension method to convert the right data source to System.Linq.ParallelQuery<T>.")>]
static member GroupJoin : System.Linq.ParallelQuery<'Outer> * seq<'Inner> * Func<'Outer, 'Key> * Func<'Inner, 'Key> * Func<'Outer, seq<'Inner>, 'Result> -> System.Linq.ParallelQuery<'Result>
<Extension()>
Public Function GroupJoin(Of TOuter, TInner, TKey, TResult) (outer As ParallelQuery(Of TOuter), inner As IEnumerable(Of TInner), outerKeySelector As Func(Of TOuter, TKey), innerKeySelector As Func(Of TInner, TKey), resultSelector As Func(Of TOuter, IEnumerable(Of TInner), TResult)) As ParallelQuery(Of TResult)

型パラメーター

TOuter

この型パラメーターは使用されません。

TInner

この型パラメーターは使用されません。

TKey

この型パラメーターは使用されません。

TResult

この型パラメーターは使用されません。

パラメーター

outer
ParallelQuery<TOuter>

このパラメーターは使用されません。

inner
IEnumerable<TInner>

このパラメーターは使用されません。

outerKeySelector
Func<TOuter,TKey>

このパラメーターは使用されません。

innerKeySelector
Func<TInner,TKey>

このパラメーターは使用されません。

resultSelector
Func<TOuter,IEnumerable<TInner>,TResult>

このパラメーターは使用されません。

戻り値

ParallelQuery<TResult>

このオーバーロードは常に NotSupportedException をスローします。

属性

例外

このメソッドが呼び出されたときに発生する例外。

注釈

このオーバーロードは、 型の左側のデータ ソースと 型 ParallelQuery<TSource> の右のデータ ソースを使用して GroupJoin を使用できないようにするために存在します IEnumerable<T>。 それ以外の場合、GroupJoin 演算子は並列実装にバインドされているように見えますが、実際にはシーケンシャル実装にバインドされます。

こちらもご覧ください

適用対象

GroupJoin<TOuter,TInner,TKey,TResult>(ParallelQuery<TOuter>, ParallelQuery<TInner>, Func<TOuter,TKey>, Func<TInner,TKey>, Func<TOuter,IEnumerable<TInner>, TResult>)

ソース:
ParallelEnumerable.cs
ソース:
ParallelEnumerable.cs
ソース:
ParallelEnumerable.cs

キーが等しいかどうかに基づいて 2 つのシーケンスの要素を並列で相互に関連付け、その結果をグループ化します。 キーの比較には既定の等値比較子が使用されます。

public:
generic <typename TOuter, typename TInner, typename TKey, typename TResult>
[System::Runtime::CompilerServices::Extension]
 static System::Linq::ParallelQuery<TResult> ^ GroupJoin(System::Linq::ParallelQuery<TOuter> ^ outer, System::Linq::ParallelQuery<TInner> ^ inner, Func<TOuter, TKey> ^ outerKeySelector, Func<TInner, TKey> ^ innerKeySelector, Func<TOuter, System::Collections::Generic::IEnumerable<TInner> ^, TResult> ^ resultSelector);
public static System.Linq.ParallelQuery<TResult> GroupJoin<TOuter,TInner,TKey,TResult> (this System.Linq.ParallelQuery<TOuter> outer, System.Linq.ParallelQuery<TInner> inner, Func<TOuter,TKey> outerKeySelector, Func<TInner,TKey> innerKeySelector, Func<TOuter,System.Collections.Generic.IEnumerable<TInner>,TResult> resultSelector);
static member GroupJoin : System.Linq.ParallelQuery<'Outer> * System.Linq.ParallelQuery<'Inner> * Func<'Outer, 'Key> * Func<'Inner, 'Key> * Func<'Outer, seq<'Inner>, 'Result> -> System.Linq.ParallelQuery<'Result>
<Extension()>
Public Function GroupJoin(Of TOuter, TInner, TKey, TResult) (outer As ParallelQuery(Of TOuter), inner As ParallelQuery(Of TInner), outerKeySelector As Func(Of TOuter, TKey), innerKeySelector As Func(Of TInner, TKey), resultSelector As Func(Of TOuter, IEnumerable(Of TInner), TResult)) As ParallelQuery(Of TResult)

型パラメーター

TOuter

最初のシーケンスの要素の型。

TInner

2 番目のシーケンスの要素の型。

TKey

キー セレクター関数によって返されるキーの型。

TResult

結果の要素の型。

パラメーター

outer
ParallelQuery<TOuter>

結合する最初のシーケンス。

inner
ParallelQuery<TInner>

最初のシーケンスに結合するシーケンス。

outerKeySelector
Func<TOuter,TKey>

最初のシーケンスの各要素から結合キーを抽出する関数。

innerKeySelector
Func<TInner,TKey>

2 番目のシーケンスの各要素から結合キーを抽出する関数。

resultSelector
Func<TOuter,IEnumerable<TInner>,TResult>

最初のシーケンスの要素と、2 番目のシーケンスの一致する要素のコレクションから結果の要素を作成する関数。

戻り値

ParallelQuery<TResult>

2 つのシーケンスに対してグループ化結合を実行することによって取得される TResult 型の要素が格納されているシーケンス。

例外

WithCancellation<TSource>(ParallelQuery<TSource>, CancellationToken) 経由で渡されたトークンで、クエリが取り消されました。

source または action または outer または inner または outerKeySelector または innerKeySelector または resultSelector は、null (Visual Basic では Nothing) です。

クエリ評価中に 1 つまたは複数の例外が発生しました。

こちらもご覧ください

適用対象

GroupJoin<TOuter,TInner,TKey,TResult>(ParallelQuery<TOuter>, IEnumerable<TInner>, Func<TOuter,TKey>, Func<TInner,TKey>, Func<TOuter,IEnumerable<TInner>, TResult>, IEqualityComparer<TKey>)

ソース:
ParallelEnumerable.cs
ソース:
ParallelEnumerable.cs
ソース:
ParallelEnumerable.cs

注意事項

The second data source of a binary operator must be of type System.Linq.ParallelQuery<T> rather than System.Collections.Generic.IEnumerable<T>. To fix this problem, use the AsParallel() extension method to convert the right data source to System.Linq.ParallelQuery<T>.

この GroupJoin オーバーロードは呼び出さないでください。 このメソッドは互換性のために残されており、呼び出すと常に NotSupportedException をスローします。

public:
generic <typename TOuter, typename TInner, typename TKey, typename TResult>
[System::Runtime::CompilerServices::Extension]
 static System::Linq::ParallelQuery<TResult> ^ GroupJoin(System::Linq::ParallelQuery<TOuter> ^ outer, System::Collections::Generic::IEnumerable<TInner> ^ inner, Func<TOuter, TKey> ^ outerKeySelector, Func<TInner, TKey> ^ innerKeySelector, Func<TOuter, System::Collections::Generic::IEnumerable<TInner> ^, TResult> ^ resultSelector, System::Collections::Generic::IEqualityComparer<TKey> ^ comparer);
[System.Obsolete("The second data source of a binary operator must be of type System.Linq.ParallelQuery<T> rather than System.Collections.Generic.IEnumerable<T>. To fix this problem, use the AsParallel() extension method to convert the right data source to System.Linq.ParallelQuery<T>.")]
public static System.Linq.ParallelQuery<TResult> GroupJoin<TOuter,TInner,TKey,TResult> (this System.Linq.ParallelQuery<TOuter> outer, System.Collections.Generic.IEnumerable<TInner> inner, Func<TOuter,TKey> outerKeySelector, Func<TInner,TKey> innerKeySelector, Func<TOuter,System.Collections.Generic.IEnumerable<TInner>,TResult> resultSelector, System.Collections.Generic.IEqualityComparer<TKey> comparer);
[System.Obsolete("The second data source of a binary operator must be of type System.Linq.ParallelQuery<T> rather than System.Collections.Generic.IEnumerable<T>. To fix this problem, use the AsParallel() extension method to convert the right data source to System.Linq.ParallelQuery<T>.")]
public static System.Linq.ParallelQuery<TResult> GroupJoin<TOuter,TInner,TKey,TResult> (this System.Linq.ParallelQuery<TOuter> outer, System.Collections.Generic.IEnumerable<TInner> inner, Func<TOuter,TKey> outerKeySelector, Func<TInner,TKey> innerKeySelector, Func<TOuter,System.Collections.Generic.IEnumerable<TInner>,TResult> resultSelector, System.Collections.Generic.IEqualityComparer<TKey>? comparer);
[<System.Obsolete("The second data source of a binary operator must be of type System.Linq.ParallelQuery<T> rather than System.Collections.Generic.IEnumerable<T>. To fix this problem, use the AsParallel() extension method to convert the right data source to System.Linq.ParallelQuery<T>.")>]
static member GroupJoin : System.Linq.ParallelQuery<'Outer> * seq<'Inner> * Func<'Outer, 'Key> * Func<'Inner, 'Key> * Func<'Outer, seq<'Inner>, 'Result> * System.Collections.Generic.IEqualityComparer<'Key> -> System.Linq.ParallelQuery<'Result>
<Extension()>
Public Function GroupJoin(Of TOuter, TInner, TKey, TResult) (outer As ParallelQuery(Of TOuter), inner As IEnumerable(Of TInner), outerKeySelector As Func(Of TOuter, TKey), innerKeySelector As Func(Of TInner, TKey), resultSelector As Func(Of TOuter, IEnumerable(Of TInner), TResult), comparer As IEqualityComparer(Of TKey)) As ParallelQuery(Of TResult)

型パラメーター

TOuter

この型パラメーターは使用されません。

TInner

この型パラメーターは使用されません。

TKey

この型パラメーターは使用されません。

TResult

この型パラメーターは使用されません。

パラメーター

outer
ParallelQuery<TOuter>

このパラメーターは使用されません。

inner
IEnumerable<TInner>

このパラメーターは使用されません。

outerKeySelector
Func<TOuter,TKey>

このパラメーターは使用されません。

innerKeySelector
Func<TInner,TKey>

このパラメーターは使用されません。

resultSelector
Func<TOuter,IEnumerable<TInner>,TResult>

このパラメーターは使用されません。

comparer
IEqualityComparer<TKey>

このパラメーターは使用されません。

戻り値

ParallelQuery<TResult>

このオーバーロードは常に NotSupportedException をスローします。

属性

例外

このメソッドが呼び出されたときに発生する例外。

注釈

このオーバーロードは、 型の左側のデータ ソースと 型 ParallelQuery<TSource> の右のデータ ソースを使用して GroupJoin を使用できないようにするために存在します IEnumerable<T>。 それ以外の場合、GroupJoin 演算子は並列実装にバインドされているように見えますが、実際にはシーケンシャル実装にバインドされます。

こちらもご覧ください

適用対象

GroupJoin<TOuter,TInner,TKey,TResult>(ParallelQuery<TOuter>, ParallelQuery<TInner>, Func<TOuter,TKey>, Func<TInner,TKey>, Func<TOuter,IEnumerable<TInner>, TResult>, IEqualityComparer<TKey>)

ソース:
ParallelEnumerable.cs
ソース:
ParallelEnumerable.cs
ソース:
ParallelEnumerable.cs

キーが等しいかどうかに基づいて 2 つのシーケンスの要素を並列で相互に関連付け、その結果をグループ化します。 指定された IEqualityComparer<T> を使用してキーを比較します。

public:
generic <typename TOuter, typename TInner, typename TKey, typename TResult>
[System::Runtime::CompilerServices::Extension]
 static System::Linq::ParallelQuery<TResult> ^ GroupJoin(System::Linq::ParallelQuery<TOuter> ^ outer, System::Linq::ParallelQuery<TInner> ^ inner, Func<TOuter, TKey> ^ outerKeySelector, Func<TInner, TKey> ^ innerKeySelector, Func<TOuter, System::Collections::Generic::IEnumerable<TInner> ^, TResult> ^ resultSelector, System::Collections::Generic::IEqualityComparer<TKey> ^ comparer);
public static System.Linq.ParallelQuery<TResult> GroupJoin<TOuter,TInner,TKey,TResult> (this System.Linq.ParallelQuery<TOuter> outer, System.Linq.ParallelQuery<TInner> inner, Func<TOuter,TKey> outerKeySelector, Func<TInner,TKey> innerKeySelector, Func<TOuter,System.Collections.Generic.IEnumerable<TInner>,TResult> resultSelector, System.Collections.Generic.IEqualityComparer<TKey> comparer);
public static System.Linq.ParallelQuery<TResult> GroupJoin<TOuter,TInner,TKey,TResult> (this System.Linq.ParallelQuery<TOuter> outer, System.Linq.ParallelQuery<TInner> inner, Func<TOuter,TKey> outerKeySelector, Func<TInner,TKey> innerKeySelector, Func<TOuter,System.Collections.Generic.IEnumerable<TInner>,TResult> resultSelector, System.Collections.Generic.IEqualityComparer<TKey>? comparer);
static member GroupJoin : System.Linq.ParallelQuery<'Outer> * System.Linq.ParallelQuery<'Inner> * Func<'Outer, 'Key> * Func<'Inner, 'Key> * Func<'Outer, seq<'Inner>, 'Result> * System.Collections.Generic.IEqualityComparer<'Key> -> System.Linq.ParallelQuery<'Result>
<Extension()>
Public Function GroupJoin(Of TOuter, TInner, TKey, TResult) (outer As ParallelQuery(Of TOuter), inner As ParallelQuery(Of TInner), outerKeySelector As Func(Of TOuter, TKey), innerKeySelector As Func(Of TInner, TKey), resultSelector As Func(Of TOuter, IEnumerable(Of TInner), TResult), comparer As IEqualityComparer(Of TKey)) As ParallelQuery(Of TResult)

型パラメーター

TOuter

最初のシーケンスの要素の型。

TInner

2 番目のシーケンスの要素の型。

TKey

キー セレクター関数によって返されるキーの型。

TResult

結果の要素の型。

パラメーター

outer
ParallelQuery<TOuter>

結合する最初のシーケンス。

inner
ParallelQuery<TInner>

最初のシーケンスに結合するシーケンス。

outerKeySelector
Func<TOuter,TKey>

最初のシーケンスの各要素から結合キーを抽出する関数。

innerKeySelector
Func<TInner,TKey>

2 番目のシーケンスの各要素から結合キーを抽出する関数。

resultSelector
Func<TOuter,IEnumerable<TInner>,TResult>

最初のシーケンスの要素と、2 番目のシーケンスの一致する要素のコレクションから結果の要素を作成する関数。

comparer
IEqualityComparer<TKey>

キーをハッシュして比較する IEqualityComparer<T>

戻り値

ParallelQuery<TResult>

2 つのシーケンスに対してグループ化結合を実行することによって取得される TResult 型の要素が格納されているシーケンス。

例外

WithCancellation<TSource>(ParallelQuery<TSource>, CancellationToken) 経由で渡されたトークンで、クエリが取り消されました。

source または action または outer または inner または outerKeySelector または innerKeySelector または resultSelector は、null (Visual Basic では Nothing) です。

クエリ評価中に 1 つまたは複数の例外が発生しました。

こちらもご覧ください

適用対象