GCInfo
This class represents statistics about the single run of the garbage collector. It is supposed to be used for testing and debugging purposes only.
Constructors
<init>
This class represents statistics about the single run of the garbage collector. It is supposed to be used for testing and debugging purposes only.
GCInfo(
epoch: Long,
startTimeNs: Long,
endTimeNs: Long,
firstPauseRequestTimeNs: Long,
firstPauseStartTimeNs: Long,
firstPauseEndTimeNs: Long,
secondPauseRequestTimeNs: Long?,
secondPauseStartTimeNs: Long?,
secondPauseEndTimeNs: Long?,
postGcCleanupTimeNs: Long?,
rootSet: RootSetStatistics,
markedCount: Long,
sweepStatistics: Map<String, SweepStatistics>,
memoryUsageBefore: Map<String, MemoryUsage>,
memoryUsageAfter: Map<String, MemoryUsage>)
Properties
endTimeNs
Time, when garbage collector run is ended, measured by kotlin.system.getTimeNanos. After this point, most of the memory is reclaimed, and a new garbage collector run can start.
val endTimeNs: Long
epoch
ID of garbage collector run.
val epoch: Long
firstPauseEndTimeNs
Time, when mutator threads are unsuspended for the first time, mesured by kotlin.system.getTimeNanos.
val firstPauseEndTimeNs: Long
firstPauseRequestTimeNs
Time, when the garbage collector thread requested suspension of mutator threads for the first time, mesured by kotlin.system.getTimeNanos.
val firstPauseRequestTimeNs: Long
firstPauseStartTimeNs
Time, when mutator threads are suspended for the first time, mesured by kotlin.system.getTimeNanos.
val firstPauseStartTimeNs: Long
markedCount
How many objects were processed during marking phase.
val markedCount: Long
memoryUsageAfter
Memory usage at the start of garbage collector run, separated by memory pools. The set of memory pools depends on the collector implementation. Can be empty, if collection is in progress.
val memoryUsageAfter: Map<String, MemoryUsage>
memoryUsageBefore
Memory usage at the end of garbage collector run, separated by memory pools. The set of memory pools depends on the collector implementation. Can be empty, if collection is in progress.
val memoryUsageBefore: Map<String, MemoryUsage>
postGcCleanupTimeNs
Time, when all memory is reclaimed, measured by kotlin.system.getTimeNanos. If null, memory reclamation is still in progress.
val postGcCleanupTimeNs: Long?
rootSet
The number of objects in each root set pool. Check RootSetStatistics doc for details.
val rootSet: RootSetStatistics
secondPauseEndTimeNs
Time, when mutator threads are unsuspended for the second time, mesured by kotlin.system.getTimeNanos.
val secondPauseEndTimeNs: Long?
secondPauseRequestTimeNs
Time, when the garbage collector thread requested suspension of mutator threads for the second time, mesured by kotlin.system.getTimeNanos.
val secondPauseRequestTimeNs: Long?
secondPauseStartTimeNs
Time, when mutator threads are suspended for the second time, mesured by kotlin.system.getTimeNanos.
val secondPauseStartTimeNs: Long?
startTimeNs
Time, when garbage collector run is started, meausered by kotlin.system.getTimeNanos.
val startTimeNs: Long
sweepStatistics
Sweeping statistics separated by memory pools. The set of memory pools depends on the collector implementation. Can be empty, if collection is in progress.
val sweepStatistics: Map<String, SweepStatistics>