ParallelEnumerable.OrderBy<TSource, TKey> Method (ParallelQuery<TSource>, Func<TSource, TKey>)
Sorts in parallel the elements of a sequence in ascending order according to a key.
Assembly: System.Core (in System.Core.dll)
public static OrderedParallelQuery<TSource> OrderBy<TSource, TKey>( this ParallelQuery<TSource> source, Func<TSource, TKey> keySelector )
Parameters
- source
-
Type:
System.Linq.ParallelQuery<TSource>
A sequence of values to order.
- keySelector
-
Type:
System.Func<TSource, TKey>
A function to extract a key from an element.
Return Value
Type: System.Linq.OrderedParallelQuery<TSource>An OrderedParallelQuery{TSource} whose elements are sorted according to a key.
Type Parameters
- TSource
The type of elements of source.
- TKey
The type of the key returned by keySelector.
| Exception | Condition |
|---|---|
| ArgumentNullException | source or keySelector is a null reference (Nothing in Visual Basic). |
| OperationCanceledException | The query was canceled with the token passed in through WithCancellation. |
| AggregateException | One or more exceptions occurred during the evaluation of the query. |
In contrast to the sequential implementation, this is not a stable sort. To achieve a stable sort, change a query of the form: var ordered = source.Select((e,i) => new { E=e, I=i }).OrderBy((v) => v.e).ThenBy(v => v.i).Select((v) => v.e);
Available since 8
.NET Framework
Available since 4.0
Portable Class Library
Supported in: portable .NET platforms
Windows Phone
Available since 8.1