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
Assembly: 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 64.
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).| Exception | Condition |
|---|---|
| ArgumentNullException | source is a null reference (Nothing in Visual Basic). |
| ArgumentOutOfRangeException | degreeOfParallelism is less than 1 or greater than 63. |
| InvalidOperationException | WithDegreeOfParallelism is used multiple times in the query. |
Windows 8, Windows Server 2012, Windows 7, Windows Vista SP2, Windows Server 2008 (Server Core Role not supported), Windows Server 2008 R2 (Server Core Role supported with SP1 or later; Itanium not supported)
The .NET Framework does not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.