EnumerablePartitionerOptions Enum

Definition

Specifies options to control the buffering behavior of a partitioner.

This enumeration supports a bitwise combination of its member values.

[System.Flags]
public enum EnumerablePartitionerOptions
[System.Flags]
[System.Serializable]
public enum EnumerablePartitionerOptions
Inheritance
EnumerablePartitionerOptions
Attributes

Fields

Name Value Description
None 0

Use the default behavior, which is to use buffering to achieve optimal performance.

NoBuffering 1

Create a partitioner that takes items from the source enumerable one at a time and does not use intermediate storage that can be accessed more efficiently by multiple threads. This option provides support for low latency (items will be processed as soon as they are available from the source) and provides partial support for dependencies between items (a thread cannot deadlock waiting for an item that the thread itself is responsible for processing).

Remarks

Out-of-the-box partitioners are created with a set of default behaviors. For example, by default, some form of buffering and chunking will be used to achieve optimal performance in the common scenario where an IEnumerable<T> implementation is fast and non-blocking. These behaviors can be overridden by this enumeration by using the Partitioner.Create method.

Applies to

Product Versions
.NET Core 1.0, Core 1.1, Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9
.NET Framework 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 1.1, 1.2, 1.3, 1.4, 1.6, 2.0, 2.1
UWP 10.0