ParallelMergeOptions Перечисление
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Указывает предпочтительный тип объединения выходных данных для использования в запросе. Другими словами, указывает, каким образом PLINQ должен объединять результаты из различных разделов в одну итоговую последовательность. Это только рекомендация, которую система может не соблюдать при параллелизации всех запросов.
public enum class ParallelMergeOptions
public enum ParallelMergeOptions
type ParallelMergeOptions =
Public Enum ParallelMergeOptions
- Наследование
Поля
AutoBuffered | 2 | Для слияния используются буферы вывода, размер которых определяется системой. Результаты накапливаются в буфере вывода, прежде чем попасть к потребителю запроса. |
Default | 0 | Используется тип слияния по умолчанию, то есть AutoBuffered. |
FullyBuffered | 3 | Используется режим слияния с полными буферами вывода. Система будет накапливать все результаты до их передачи потребителю запроса. |
NotBuffered | 1 | Используется режим слияния без буферов вывода. Элементы результатов передаются потребителю запроса сразу же после вычисления. |
Комментарии
Используется NotBuffered
для запросов, которые будут использоваться и выводиться в виде потоков. Это имеет наименьшую задержку между началом выполнения запроса и выводом элементов. Для некоторых запросов, таких как запросы, связанные с сортировкой (OrderBy, OrderByDescending), буферизация имеет важное значение, и указание NotBuffered или AutoBuffered будет игнорироваться. Однако запросы, созданные с помощью оператора AsOrdered, можно выполнять потоковую передачу, если в самом запросе не выполняется дальнейшая сортировка.
Используется AutoBuffered
в большинстве случаев; это значение по умолчанию. Он обеспечивает баланс между задержкой и общей производительностью.
Используется FullyBuffered
для запросов, когда все выходные данные могут быть обработаны до того, как потребуется информация. Этот параметр обеспечивает наилучшую производительность, когда все выходные данные можно накапливать перед получением какой-либо информации, хотя он не подходит для потоковой обработки или отображения частичных результатов в середине запроса.