Sobes.tech
Junior — Middle

Tullantı toplayıcısı obyektin artıq istifadə olunmadığını və silinə biləcəyini necə müəyyən edir?

sobes.tech Süni İntellekt

AI-dan cavab

Android-də (JVM və ya ART əsasında) Tullantı Toplayıcı (Garbage Collector) obyekt artıq istifadə olunmursa, onu kök referanslardan (məsələn, işçi ipliklərinin yığınları, statik sahələr və s.) aktiv referanslar olmadığı halda müəyyən edir.

Proses təxminən belədir:

  • Toplayıcı kök obyektlərdən başlayır və referanslar vasitəsilə əldə edilə bilən bütün obyektləri işarələyir.
  • İşarələnməyən bütün obyektlər əlçatmaz sayılır və silinə bilər.

Beləliklə, aktiv koddan əlçatan olmayan obyekt tullantı sayılır və toplanmağa məruz qalır.

Buna dərinliklə axtarış və ya işarələmə və təmizləmə (mark-and-sweep) algoritmi deyilir.