GCLatencyMode Enum
Definition
Important
Some information relates to prerelease product that may be substantially modified before it’s released. Microsoft makes no warranties, express or implied, with respect to the information provided here.
Adjusts the time that the garbage collector intrudes in your application.
public enum class GCLatencyMode
public enum GCLatencyMode
[System.Serializable]
public enum GCLatencyMode
type GCLatencyMode =
[<System.Serializable>]
type GCLatencyMode =
Public Enum GCLatencyMode
- Inheritance
- Attributes
Fields
Batch | 0 | Disables garbage collection concurrency and reclaims objects in a batch call. This is the most intrusive mode. This mode is designed for maximum throughput at the expense of responsiveness. |
Interactive | 1 | Enables garbage collection concurrency and reclaims objects while the application is running. This is the default mode for garbage collection on a workstation and is less intrusive than Batch. It balances responsiveness with throughput. This mode is equivalent to garbage collection on a workstation that is concurrent. |
LowLatency | 2 | Enables garbage collection that is more conservative in reclaiming objects. Full collections occur only if the system is under memory pressure, whereas generation 0 and generation 1 collections might occur more frequently. This mode is not available for the server garbage collector. |
NoGCRegion | 4 | Indicates that garbage collection is suspended while the app is executing a critical path. NoGCRegion is a read-only value; that is, you cannot assign the NoGCRegion value to the LatencyMode property. You specify the no GC region latency mode by calling the TryStartNoGCRegion method and terminate it by calling the EndNoGCRegion() method. |
SustainedLowLatency | 3 | Enables garbage collection that tries to minimize latency over an extended period. The collector tries to perform only generation 0, generation 1, and concurrent generation 2 collections. Full blocking collections may still occur if the system is under memory pressure. |
Remarks
You can adjust the intrusiveness of garbage collection in your application by setting the LatencyMode property to any GCLatencyMode enumeration value except GCLatencyMode.NoGCRegion
. You can also determine the garbage collector's current latency mode by retrieving the GCSettings.LatencyMode property value.
See Latency Modes for a discussion of how the runtime configuration settings for garbage collection affect the default value for this enumeration.
The GCLatencyMode.Batch mode overrides the <gcConcurrent> runtime configuration setting. If concurrent garbage collection is enabled by the <gcConcurrent> element, switching to Batch mode prevents any further concurrent collections.
Applies to
See also
.NET
피드백
https://aka.ms/ContentUserFeedback
출시 예정: 2024년 내내 콘텐츠에 대한 피드백 메커니즘으로 GitHub 문제를 단계적으로 폐지하고 이를 새로운 피드백 시스템으로 바꿀 예정입니다. 자세한 내용은 다음을 참조하세요.다음에 대한 사용자 의견 제출 및 보기