Sobes.tech
Junior — Middle

Kako funkcioniše mehanizam automatskog brisanja neiskorišćenih objekata u programu?

sobes.tech АИ

Одговор од АИ

Механизам за аутоматско уклањање непотребних објеката у C# реализује се кроз колектор смећа (Garbage Collector, GC). Он прати објекте у управљаном хипу и одређује који од њих више нису доступни из кода (односно, немају референце на њих). Такви објекти се сматрају отпадом и аутоматски се уклањају, ослобађајући меморију.

Принцип рада:

  • GC се периодично покреће и скенира све коренске објекте (статичке променљиве, локалне променљиве у стеку итд.).
  • Од корена се прати све достижне објекте.
  • Објекти којима нема пута од корена сматрају се неиспотребљивим.
  • Ови објекти се уклањају, а меморија се ослобађа.