ParallelEnumerable.WithDegreeOfParallelism<TSource> Method

Sets the degree of parallelism to use in a query. Degree of parallelism is the maximum number of concurrently executing tasks that will be used to process the query.

Namespace:  System.Linq
Assemblies:   System.Linq.Parallel (in System.Linq.Parallel.dll)
  System.Core (in System.Core.dll)

public static ParallelQuery<TSource> WithDegreeOfParallelism<TSource>(
	this ParallelQuery<TSource> source,
	int degreeOfParallelism
)

Type Parameters

TSource

The type of elements of source.

Parameters

source
Type: System.Linq.ParallelQuery<TSource>

A ParallelQuery on which to set the limit on the degrees of parallelism.

degreeOfParallelism
Type: System.Int32

The degree of parallelism for the query. The default value is Math.Min(ProcessorCount, MAX_SUPPORTED_DOP) where MAX_SUPPORTED_DOP is 512.

Return Value

Type: System.Linq.ParallelQuery<TSource>
ParallelQuery representing the same query as source, with the limit on the degrees of parallelism set.

Usage Note

In Visual Basic and C#, you can call this method as an instance method on any object of type ParallelQuery<TSource>. When you use instance method syntax to call this method, omit the first parameter. For more information, see Extension Methods (Visual Basic) or Extension Methods (C# Programming Guide).

ExceptionCondition
ArgumentNullException

source is a null reference (Nothing in Visual Basic).

ArgumentOutOfRangeException

degreeOfParallelism is less than 1 or greater than 511.

InvalidOperationException

WithDegreeOfParallelism is used multiple times in the query.

.NET Framework

Supported in: 4.6, 4.5, 4

.NET Framework Client Profile

Supported in: 4

Portable Class Library

Supported in: Portable Class Library

Supported in: Windows Phone 8.1
Was this page helpful?
(1500 characters remaining)
Thank you for your feedback
Show:
© 2015 Microsoft