Table of Contents

Class GcModeExtensions

Namespace
BenchmarkDotNet.Jobs
Assembly
BenchmarkDotNet.dll
public static class GcModeExtensions
Inheritance
GcModeExtensions

Methods

WithAllowVeryLargeObjects(GcMode, bool)

On 64-bit platforms, enables arrays that are greater than 2 gigabytes (GB) in total size. false: Arrays greater than 2 GB in total size are not enabled. This is the default. true: Arrays greater than 2 GB in total size are enabled on 64-bit platforms.

public static GcMode WithAllowVeryLargeObjects(this GcMode mode, bool value)

Parameters

mode GcMode
value bool

Returns

GcMode

WithConcurrent(GcMode, bool)

Specifies whether the common language runtime runs garbage collection on a separate thread. false: Does not run garbage collection concurrently. true: Runs garbage collection concurrently. This is the default.

public static GcMode WithConcurrent(this GcMode mode, bool value)

Parameters

mode GcMode
value bool

Returns

GcMode

WithCpuGroups(GcMode, bool)

Specifies whether garbage collection supports multiple CPU groups. false: Garbage collection does not support multiple CPU groups. This is the default. true: Garbage collection supports multiple CPU groups, if server garbage collection is enabled.

public static GcMode WithCpuGroups(this GcMode mode, bool value)

Parameters

mode GcMode
value bool

Returns

GcMode

WithForce(GcMode, bool)

Specifies whether the BenchmarkDotNet's benchmark runner forces full garbage collection after each benchmark invocation false: Does not force garbage collection. true: Forces full garbage collection after each benchmark invocation. This is the default.

public static GcMode WithForce(this GcMode mode, bool value)

Parameters

mode GcMode
value bool

Returns

GcMode

WithHeapAffinitizeMask(GcMode, int)

process mask, see MSDN for more.

public static GcMode WithHeapAffinitizeMask(this GcMode mode, int heapAffinitizeMask)

Parameters

mode GcMode
heapAffinitizeMask int

Returns

GcMode

WithHeapCount(GcMode, int)

specify the # of Server GC threads/heaps, must be smaller than the # of logical CPUs the process is allowed to run on, ie, if you don't specifically affinitize your process it means the # of total logical CPUs on the machine; otherwise this is the # of logical CPUs you affinitized your process to.

public static GcMode WithHeapCount(this GcMode mode, int heapCount)

Parameters

mode GcMode
heapCount int

Returns

GcMode

WithNoAffinitize(GcMode, bool)

specify true to disable hard affinity of Server GC threads to CPUs

public static GcMode WithNoAffinitize(this GcMode mode, bool value)

Parameters

mode GcMode
value bool

Returns

GcMode

WithRetainVm(GcMode, bool)

Put segments that should be deleted on a standby list for future use instead of releasing them back to the OS The default is false

public static GcMode WithRetainVm(this GcMode mode, bool value)

Parameters

mode GcMode
value bool

Returns

GcMode

WithServer(GcMode, bool)

Specifies whether the common language runtime runs server garbage collection. false: Does not run server garbage collection. This is the default. true: Runs server garbage collection.

public static GcMode WithServer(this GcMode mode, bool value)

Parameters

mode GcMode
value bool

Returns

GcMode