ParallelMergeOptions 枚举
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
指定要在查询中使用的 输出合并 的首选类型。 换句话说,它指示 PLINQ 应如何将各种分区的结果合并回单个结果序列中。 这只是一个提示,在并行化所有查询时,系统可能不会尊重这一点。
public enum class ParallelMergeOptions
public enum ParallelMergeOptions
type ParallelMergeOptions =
Public Enum ParallelMergeOptions
- 继承
字段
| 名称 | 值 | 说明 |
|---|---|---|
| Default | 0 | 使用默认合并类型,即 AutoBuffered。 |
| NotBuffered | 1 | 使用不带输出缓冲区的合并。 计算结果元素后,使该元素可供查询使用者使用。 |
| AutoBuffered | 2 | 将合并与系统选择的大小的输出缓冲区一起使用。 在结果可供查询使用者使用之前,结果将累积到输出缓冲区中。 |
| FullyBuffered | 3 | 将合并与完整输出缓冲区一起使用。 系统将累积所有结果,然后让其中任何结果可供查询使用者使用。 |
注解
用于 NotBuffered 将作为流使用的查询和输出,这在开始查询执行和生成元素之间的延迟最低。 对于某些查询(例如涉及排序(OrderBy、OrderByDescending)的查询,缓冲至关重要,并且将忽略 NotBuffered 或 AutoBuffered 的提示。 但是,只要查询本身中不执行进一步排序,就可以流式传输使用 AsOrdered 运算符创建的查询。
AutoBuffered在大多数情况下使用;这是默认值。 它在延迟与整体性能之间取得平衡。
在需要信息之前处理整个输出时,用于 FullyBuffered 查询。 此选项在生成任何信息之前可以累积所有输出时提供最佳性能,尽管它不适合流处理或显示部分结果中查询。