Sobes.tech
Junior — Middle

Кайра иштетүүчү жыйноочу объект эми колдонулбай калганын жана ал жоюлууга боло турганын кантип аныктайт?

sobes.tech AI

AIден жооп

Android-деги (JVM же ART негизделген) калдык жыйноочу (Garbage Collector) объект азыр колдонулбай турганын аныктайт, эгер ага түпкү объекттерден (мисалы, жиптердин стектери, статикалык талаалар жана башка) активдүү шилтемелер жок болсо.

Процесс так эле мындай:

  • Жыйноочу түпкү объекттерден баштап, шилтемелер аркылуу жетүүгө болот бардык объекттерди белгилейт.
  • Белгиленбеген бардык объекттер жеткиликтүү эмес деп эсептелет жана өчүрүлүшү мүмкүн.

Ошентип, активдүү коддон жеткиликтүү эмес объект калдык деп эсептелет жана жыйноого subject болот.

Бул алгоритм тереңдикке биринчи издөө же белгилөө жана тазалоо (mark-and-sweep) деп аталат.