Junior — Middle
Kuidas erineb prügikoristaja käitumine 10 KB ja 100 KB suuruste objektide haldamisel?
sobes.tech AI
Vastus AI-lt
C# kehas, prügamės surinkėjas (GC) skirsto objektus į kartas (Gen 0, Gen 1, Gen 2) ir atskirai tvarko didelius objektus (Large Object Heap, LOH).
Objektai iki maždaug 85 KB yra dedami į įprastą krūvą ir dalyvauja kartų šiukšlių rinkime. Objektai, didesni nei 85 KB, laikomi dideliais ir dedami į LOH.
Ypatybės:
- Maži objektai (<85 KB): dažnai kuriami ir trinami, GC juos dažniau surenka, kas leidžia greitai atlaisvinti atmintį.
- Dideli objektai (>85 KB): dedami į LOH, kuris surenkamas rečiau, nes su juo atliekamos operacijos yra brangesnės laiko atžvilgiu.
Taigi, 10 KB dydžio objektai bus surenkami dažniau, o 100 KB – rečiau, bet jų trinimas yra išteklių reikalaujantis procesas.