[K/N] Track object counts during sweep ^KT-55364
Previously object count was tracked via allocator. It adds additional burden on every allocation. Tracking via sweeper is better because it mostly happens on the GC thread during a concurrent sweep.
This commit is contained in:
committed by
Space Cloud
parent
63231f7b73
commit
9fd05632f0
@@ -12,13 +12,11 @@ import kotlin.test.*
|
||||
@Test
|
||||
fun `nothing new collected`() {
|
||||
GC.collect()
|
||||
GC.collect();
|
||||
GC.collect()
|
||||
val stat = GC.lastGCInfo
|
||||
assertNotNull(stat)
|
||||
assertEquals(stat.memoryUsageBefore.keys, stat.memoryUsageAfter.keys)
|
||||
for (key in stat.memoryUsageBefore.keys) {
|
||||
assertEquals(stat.memoryUsageBefore[key]!!.objectsCount, stat.memoryUsageAfter[key]!!.objectsCount)
|
||||
assertEquals(stat.memoryUsageBefore[key]!!.totalObjectsSizeBytes, stat.memoryUsageAfter[key]!!.totalObjectsSizeBytes)
|
||||
for (key in stat.sweepStatistics.keys) {
|
||||
assertEquals(stat.sweepStatistics[key]!!.sweptCount, 0L)
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user