Show / Hide Table of Contents

Class GcMode

Inheritance
Object
CharacteristicObject
CharacteristicObject<GcMode>
JobMode<GcMode>
GcMode
Implements
IEquatable<GcMode>
Inherited Members
JobMode<GcMode>.Default
JobMode<GcMode>.Job
CharacteristicObject<GcMode>.Apply(CharacteristicObject)
CharacteristicObject<GcMode>.Apply(CharacteristicObject[])
CharacteristicObject<GcMode>.ApplyAndFreeze(CharacteristicObject)
CharacteristicObject<GcMode>.ApplyAndFreeze(CharacteristicObject[])
CharacteristicObject<GcMode>.Freeze()
CharacteristicObject<GcMode>.UnfreezeCopy()
CharacteristicObject<GcMode>.CreateCharacteristic<TC>(String)
CharacteristicObject<GcMode>.CreateHiddenCharacteristic<TC>(String)
CharacteristicObject<GcMode>.CreateIgnoreOnApplyCharacteristic<TC>(String)
CharacteristicObject.ResolveId(CharacteristicObject, String)
CharacteristicObject.IdCharacteristic
CharacteristicObject.OwnerOrSelf
CharacteristicObject.Frozen
CharacteristicObject.IsPropertyBag
CharacteristicObject.HasChanges
CharacteristicObject.GetCharacteristicsWithValues()
CharacteristicObject.HasValue(Characteristic)
CharacteristicObject.ResolveValue<T>(Characteristic<T>, IResolver)
CharacteristicObject.ResolveValue<T>(Characteristic<T>, IResolver, T)
CharacteristicObject.ResolveValue(Characteristic, IResolver)
CharacteristicObject.ResolveValue(Characteristic, IResolver, Object)
CharacteristicObject.ResolveValue<T>(Characteristic<T>, T)
CharacteristicObject.ResolveValue(Characteristic, Object)
CharacteristicObject.ResolveValueAsNullable<T>(Characteristic<T>)
CharacteristicObject.ApplyCore(CharacteristicObject)
CharacteristicObject.FreezeCore()
CharacteristicObject.UnfreezeCopyCore()
CharacteristicObject.Id
CharacteristicObject.ToString()
Namespace: BenchmarkDotNet.Jobs
Assembly: BenchmarkDotNet.dll
Syntax
public sealed class GcMode : JobMode<GcMode>, IEquatable<GcMode>

Fields

AllowVeryLargeObjectsCharacteristic

Declaration
public static readonly Characteristic<bool> AllowVeryLargeObjectsCharacteristic
Field Value
Type Description
Characteristic<Boolean>

ConcurrentCharacteristic

Declaration
public static readonly Characteristic<bool> ConcurrentCharacteristic
Field Value
Type Description
Characteristic<Boolean>

CpuGroupsCharacteristic

Declaration
public static readonly Characteristic<bool> CpuGroupsCharacteristic
Field Value
Type Description
Characteristic<Boolean>

ForceCharacteristic

Declaration
public static readonly Characteristic<bool> ForceCharacteristic
Field Value
Type Description
Characteristic<Boolean>

HeapAffinitizeMaskCharacteristic

Declaration
public static readonly Characteristic<int> HeapAffinitizeMaskCharacteristic
Field Value
Type Description
Characteristic<Int32>

HeapCountCharacteristic

Declaration
public static readonly Characteristic<int> HeapCountCharacteristic
Field Value
Type Description
Characteristic<Int32>

NoAffinitizeCharacteristic

Declaration
public static readonly Characteristic<bool> NoAffinitizeCharacteristic
Field Value
Type Description
Characteristic<Boolean>

RetainVmCharacteristic

Declaration
public static readonly Characteristic<bool> RetainVmCharacteristic
Field Value
Type Description
Characteristic<Boolean>

ServerCharacteristic

Declaration
public static readonly Characteristic<bool> ServerCharacteristic
Field Value
Type Description
Characteristic<Boolean>

Properties

AllowVeryLargeObjects

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.

Declaration
public bool AllowVeryLargeObjects { get; set; }
Property Value
Type Description
Boolean

Concurrent

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.

Declaration
public bool Concurrent { get; set; }
Property Value
Type Description
Boolean

CpuGroups

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.

Declaration
public bool CpuGroups { get; set; }
Property Value
Type Description
Boolean

Force

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.

Declaration
public bool Force { get; set; }
Property Value
Type Description
Boolean

HeapAffinitizeMask

process mask, see MSDN for more.

Declaration
public int HeapAffinitizeMask { get; set; }
Property Value
Type Description
Int32

HeapCount

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.

Declaration
public int HeapCount { get; set; }
Property Value
Type Description
Int32

NoAffinitize

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

Declaration
public bool NoAffinitize { get; set; }
Property Value
Type Description
Boolean

RetainVm

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

Declaration
public bool RetainVm { get; set; }
Property Value
Type Description
Boolean

Server

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.

Declaration
public bool Server { get; set; }
Property Value
Type Description
Boolean

Methods

Equals(GcMode)

Declaration
public bool Equals(GcMode other)
Parameters
Type Name Description
GcMode other
Returns
Type Description
Boolean

GetHashCode()

Declaration
public override int GetHashCode()
Returns
Type Description
Int32
Overrides
Object.GetHashCode()

Implements

System.IEquatable<T>

Extension Methods

CharacteristicHelper.GetThisTypeCharacteristics(CharacteristicObject)
CharacteristicHelper.GetAllCharacteristics(CharacteristicObject)
GcModeExtensions.WithServer(GcMode, Boolean)
GcModeExtensions.WithConcurrent(GcMode, Boolean)
GcModeExtensions.WithCpuGroups(GcMode, Boolean)
GcModeExtensions.WithForce(GcMode, Boolean)
GcModeExtensions.WithAllowVeryLargeObjects(GcMode, Boolean)
GcModeExtensions.WithRetainVm(GcMode, Boolean)
GcModeExtensions.WithHeapCount(GcMode, Int32)
GcModeExtensions.WithNoAffinitize(GcMode, Boolean)
GcModeExtensions.WithHeapAffinitizeMask(GcMode, Int32)
In This Article
Back to top Copyright © 2013–2021 .NET Foundation and contributors