ParallelMergeOptions ParallelMergeOptions ParallelMergeOptions ParallelMergeOptions Enum

定義

クエリで使用する、推奨される種類の出力マージを指定します。 つまり、さまざまなパーティションから返された結果を PLINQ がどのように単一の結果シーケンスにマージするかを示します。 これはヒントにすぎないため、すべてのクエリの並列化においてシステムが適用するとは限りません。This is a hint only, and may not be respected by the system when parallelizing all queries.

public enum class ParallelMergeOptions
public enum ParallelMergeOptions
type ParallelMergeOptions = 
Public Enum ParallelMergeOptions
継承
ParallelMergeOptionsParallelMergeOptionsParallelMergeOptionsParallelMergeOptions

フィールド

AutoBuffered AutoBuffered AutoBuffered AutoBuffered 2

システムが選択したサイズの出力バッファーを使用してマージを行います。Use a merge with output buffers of a size chosen by the system. 結果は、クエリのコンシューマーに返される前に、出力バッファーに蓄積されます。Results will accumulate into an output buffer before they are available to the consumer of the query.

Default Default Default Default 0

既定のマージの種類 (AutoBuffered) を使用します。Use the default merge type, which is AutoBuffered.

FullyBuffered FullyBuffered FullyBuffered FullyBuffered 3

すべての出力バッファーを使用してマージを行います。Use a merge with full output buffers. システムは、クエリのコンシューマーに結果を返す前に、すべての結果をバッファーに蓄積します。The system will accumulate all of the results before making any of them available to the consumer of the query.

NotBuffered NotBuffered NotBuffered NotBuffered 1

出力バッファーを使用せずにマージを行います。Use a merge without output buffers. 結果の要素が算出されると、直ちにその要素がクエリのコンシューマーに返されます。As soon as result elements have been computed, make that element available to the consumer of the query.

注釈

使用NotBuffered消費やストリームとして出力がクエリでは、最初のクエリの実行と生成される要素間の最低遅延があります。Use NotBuffered for queries that will be consumed and output as streams, this has the lowest latency between beginning query execution and elements being yielded. 、一部のクエリ (OrderBy、OrderByDescending) の並べ替えに関係するなどのバッファリングが不可欠と NotBuffered または AutoBuffered のヒントは無視されます。For some queries, such as those involving a sort (OrderBy, OrderByDescending), buffering is essential and a hint of NotBuffered or AutoBuffered will be ignored. ただし、クエリ自体内でさらに並べ替えが行われない限り、AsOrdered 演算子を使用して作成したクエリをストリーミングできます。However, queries that are created by using the AsOrdered operator can be streamed as long as no further sorting is performed within the query itself.

使用AutoBufferedほとんどの場合は、既定値。Use AutoBuffered for most cases; this is the default. 待機時間と全体的なパフォーマンスのバランスが取れています。It strikes a balance between latency and overall performance.

使用FullyBufferedクエリ時に、必要な情報が前に、出力全体を処理することができます。Use FullyBuffered for queries when the entire output can be processed before the information is needed. このオプションは、中間クエリの結果があるストリームを処理または表示部分の適切なすべての情報を生成する前にすべての出力を累積することができる場合、最適なパフォーマンスを提供します。This option offers the best performance when all of the output can be accumulated before yielding any information, though it is not suitable for stream processing or showing partial results mid-query.

適用対象

こちらもご覧ください