Sobes.tech
Junior — Middle

Оё метавонед принсипи кориратии ҷамъоварии партовҳоро дар забонҳои барномасозӣ шарҳ диҳед?

sobes.tech AI

Ҷавоб аз AI

Қоқыс жинағыш (Garbage Collector, GC) — бұл автоматты түрде жадты басқару механизмі, ол бағдарламадан енді пайдаланылмайтын объектілердің иеленген жадысын босатады.

Жұмыс принципі:

  1. Сілтемелерді бақылау: GC қандай объектілер қол жетімді екенін (оған белсенді кодтан сілтемелер бар) және қайсысы жоқ екенін анықтайды.
  2. Қоқысты анықтау: Сілтемесі жоқ объектілер қоқыс ретінде қарастырылады және жойылуға жатады.
  3. Жадты босату: GC осындай объектілердің иеленген жадысын босатады, ол қайта пайдалану үшін қол жетімді болады.

Flutter (Dart) ішінде қоқыс жинағыш сілтеме санын есептеу және кезеңдік тазалау негізінде жұмыс істейді. Ол артқы жоспарында жұмыс істейді және қолданбаның жұмысындағы үзілістерді азайтуға тырысады.

Мысал:

class MyClass {
  String data;
  MyClass(this.data);
}

void main() {
  MyClass obj = MyClass('Сәлем');
  obj = null; // Енді MyClass объектісі қол жетімсіз және GC арқылы жиналуы мүмкін
}

obj null болған кезде, MyClass объектісі қол жетімсіз болады және қоқыс жинағыш арқылы жойылады.