ParallelMergeOptions 枚举

定义

指定要在查询中使用的 输出合并 的首选类型。 换句话说,它指示 PLINQ 应如何将各种分区的结果合并回单个结果序列中。 这只是一个提示,在并行化所有查询时,系统可能不会尊重这一点。

public enum class ParallelMergeOptions
public enum ParallelMergeOptions
type ParallelMergeOptions = 
Public Enum ParallelMergeOptions
继承
ParallelMergeOptions

字段

名称 说明
Default 0

使用默认合并类型,即 AutoBuffered。

NotBuffered 1

使用不带输出缓冲区的合并。 计算结果元素后,使该元素可供查询使用者使用。

AutoBuffered 2

将合并与系统选择的大小的输出缓冲区一起使用。 在结果可供查询使用者使用之前,结果将累积到输出缓冲区中。

FullyBuffered 3

将合并与完整输出缓冲区一起使用。 系统将累积所有结果,然后让其中任何结果可供查询使用者使用。

注解

用于 NotBuffered 将作为流使用的查询和输出,这在开始查询执行和生成元素之间的延迟最低。 对于某些查询(例如涉及排序(OrderBy、OrderByDescending)的查询,缓冲至关重要,并且将忽略 NotBuffered 或 AutoBuffered 的提示。 但是,只要查询本身中不执行进一步排序,就可以流式传输使用 AsOrdered 运算符创建的查询。

AutoBuffered在大多数情况下使用;这是默认值。 它在延迟与整体性能之间取得平衡。

在需要信息之前处理整个输出时,用于 FullyBuffered 查询。 此选项在生成任何信息之前可以累积所有输出时提供最佳性能,尽管它不适合流处理或显示部分结果中查询。

适用于

另请参阅