Поделиться через


ParallelEnumerable.OrderBy Метод

Определение

Выполняет сортировку параллельно элементов последовательности в порядке возрастания.

Перегрузки

OrderBy<TSource,TKey>(ParallelQuery<TSource>, Func<TSource,TKey>)

Выполняет сортировку параллельно элементов последовательности в порядке возрастания в соответствии с ключом.

OrderBy<TSource,TKey>(ParallelQuery<TSource>, Func<TSource,TKey>, IComparer<TKey>)

Выполняет сортировку параллельно элементов последовательности в порядке возрастания с помощью указанного средства сравнения.

OrderBy<TSource,TKey>(ParallelQuery<TSource>, Func<TSource,TKey>)

Исходный код:
ParallelEnumerable.cs
Исходный код:
ParallelEnumerable.cs
Исходный код:
ParallelEnumerable.cs

Выполняет сортировку параллельно элементов последовательности в порядке возрастания в соответствии с ключом.

public:
generic <typename TSource, typename TKey>
[System::Runtime::CompilerServices::Extension]
 static System::Linq::OrderedParallelQuery<TSource> ^ OrderBy(System::Linq::ParallelQuery<TSource> ^ source, Func<TSource, TKey> ^ keySelector);
public static System.Linq.OrderedParallelQuery<TSource> OrderBy<TSource,TKey> (this System.Linq.ParallelQuery<TSource> source, Func<TSource,TKey> keySelector);
static member OrderBy : System.Linq.ParallelQuery<'Source> * Func<'Source, 'Key> -> System.Linq.OrderedParallelQuery<'Source>
<Extension()>
Public Function OrderBy(Of TSource, TKey) (source As ParallelQuery(Of TSource), keySelector As Func(Of TSource, TKey)) As OrderedParallelQuery(Of TSource)

Параметры типа

TSource

Тип элементов source.

TKey

Тип ключа, возвращаемого keySelector.

Параметры

source
ParallelQuery<TSource>

Последовательность значений для упорядочивания.

keySelector
Func<TSource,TKey>

Функция для извлечения ключа из элемента.

Возвращаемое значение

УпорядоченныйParallelQuery{TSource}, элементы которого сортируются в соответствии с ключом.

Исключения

source или keySelector является пустой ссылкой (Nothing в Visual Basic).

Запрос был отменен с маркером, переданным через WithCancellation<TSource>(ParallelQuery<TSource>, CancellationToken).

Во время оценки запроса произошло одно или несколько исключений.

Комментарии

В отличие от последовательной реализации, это не стабильная сортировка. Чтобы добиться стабильной сортировки, измените запрос формы: var упорядочен = источник. Select(e,i) => new { E=e, I=i}. OrderBy((v) => v.e. ThenBy(v => v.i). Select(v) => v.e);

См. также раздел

Применяется к

OrderBy<TSource,TKey>(ParallelQuery<TSource>, Func<TSource,TKey>, IComparer<TKey>)

Исходный код:
ParallelEnumerable.cs
Исходный код:
ParallelEnumerable.cs
Исходный код:
ParallelEnumerable.cs

Выполняет сортировку параллельно элементов последовательности в порядке возрастания с помощью указанного средства сравнения.

public:
generic <typename TSource, typename TKey>
[System::Runtime::CompilerServices::Extension]
 static System::Linq::OrderedParallelQuery<TSource> ^ OrderBy(System::Linq::ParallelQuery<TSource> ^ source, Func<TSource, TKey> ^ keySelector, System::Collections::Generic::IComparer<TKey> ^ comparer);
public static System.Linq.OrderedParallelQuery<TSource> OrderBy<TSource,TKey> (this System.Linq.ParallelQuery<TSource> source, Func<TSource,TKey> keySelector, System.Collections.Generic.IComparer<TKey> comparer);
public static System.Linq.OrderedParallelQuery<TSource> OrderBy<TSource,TKey> (this System.Linq.ParallelQuery<TSource> source, Func<TSource,TKey> keySelector, System.Collections.Generic.IComparer<TKey>? comparer);
static member OrderBy : System.Linq.ParallelQuery<'Source> * Func<'Source, 'Key> * System.Collections.Generic.IComparer<'Key> -> System.Linq.OrderedParallelQuery<'Source>
<Extension()>
Public Function OrderBy(Of TSource, TKey) (source As ParallelQuery(Of TSource), keySelector As Func(Of TSource, TKey), comparer As IComparer(Of TKey)) As OrderedParallelQuery(Of TSource)

Параметры типа

TSource

Тип элементов source.

TKey

Тип ключа, возвращаемого keySelector.

Параметры

source
ParallelQuery<TSource>

Последовательность значений для упорядочивания.

keySelector
Func<TSource,TKey>

Функция для извлечения ключа из элемента.

comparer
IComparer<TKey>

IComparer{TKey} для сравнения ключей.

Возвращаемое значение

УпорядоченныйParallelQuery{TSource}, элементы которого сортируются в соответствии с ключом.

Исключения

source или keySelector является пустой ссылкой (Nothing в Visual Basic).

Запрос был отменен с маркером, переданным через WithCancellation<TSource>(ParallelQuery<TSource>, CancellationToken).

Во время оценки запроса произошло одно или несколько исключений.

Комментарии

В отличие от последовательной реализации, это не стабильная сортировка. См. примечания для OrderBy подхода к реализации стабильной сортировки.

См. также раздел

Применяется к