ParallelMergeOptions 열거형
정의
중요
일부 정보는 릴리스되기 전에 상당 부분 수정될 수 있는 시험판 제품과 관련이 있습니다. Microsoft는 여기에 제공된 정보에 대해 어떠한 명시적이거나 묵시적인 보증도 하지 않습니다.
쿼리에서 사용할 기본 출력 병합 형식을 지정합니다. 즉, PLINQ가 다양한 파티션의 결과를 단일 결과 시퀀스로 다시 병합하는 방법을 나타냅니다. 이는 힌트일 뿐이며 모든 쿼리를 병렬 처리할 때 시스템에서 적용되지 않을 수 있습니다.
public enum class ParallelMergeOptions
public enum ParallelMergeOptions
type ParallelMergeOptions =
Public Enum ParallelMergeOptions
- 상속
필드
| Name | 값 | Description |
|---|---|---|
| Default | 0 | 기본 병합 형식인 AutoBuffered를 사용합니다. |
| NotBuffered | 1 | 출력 버퍼 없이 병합을 사용합니다. 결과 요소가 계산되는 즉시 해당 요소를 쿼리 소비자가 사용할 수 있도록 합니다. |
| AutoBuffered | 2 | 시스템에서 선택한 크기의 출력 버퍼와 병합을 사용합니다. 결과는 쿼리 소비자가 사용할 수 있기 전에 출력 버퍼에 누적됩니다. |
| FullyBuffered | 3 | 전체 출력 버퍼와 병합을 사용합니다. 시스템은 쿼리 소비자가 사용할 수 있도록 하기 전에 모든 결과를 누적합니다. |
설명
스트림으로 사용 및 출력되는 쿼리에 사용 NotBuffered 되며, 시작 쿼리 실행과 생성되는 요소 사이의 대기 시간이 가장 짧습니다. 정렬(OrderBy, OrderByDescending)과 관련된 쿼리와 같은 일부 쿼리의 경우 버퍼링이 필수이며 NotBuffered 또는 AutoBuffered 힌트는 무시됩니다. 그러나 AsOrdered 연산자를 사용하여 만든 쿼리는 쿼리 자체 내에서 더 이상 정렬이 수행되지 않는 한 스트리밍할 수 있습니다.
대부분의 경우 사용합니다 AutoBuffered . 기본값입니다. 대기 시간과 전반적인 성능 간의 균형을 조정합니다.
정보가 필요하기 전에 전체 출력을 처리할 수 있는 경우 쿼리에 사용합니다 FullyBuffered . 이 옵션은 정보를 생성하기 전에 모든 출력을 누적할 수 있는 경우 최상의 성능을 제공하지만 스트림 처리에 적합하지 않거나 쿼리 중간에 부분 결과를 표시하는 데는 적합하지 않습니다.