Junior
Chiqindilarni yig'uvchi (Garbage Collector) nima?
sobes.tech AI
AIdan javob
Qayta yig'uvchi - bu xotira boshqaruv tizimining komponenti bo'lib, dastur tomonidan endi ishlatilmaydigan ob'ektlar tomonidan egallangan xotirani avtomatik ravishda bo'shatadi.
Asosiy ishlash prinsiplari:
- Kuzatuv algoritmlari: Qayta yig'uvchi, qaysi ob'ektlar mavjud (poydevor nuqtalaridan, masalan, stek yoki global o'zgaruvchilar orqali, erishish mumkin) va qaysilari emasligini aniqlaydi.
- Tozalash: Mavjud bo'lmagan ob'ektlar belgilangan va ularning egallagan xotira bo'sh xotira havzasiga qaytariladi.
Ommabop algoritmlar:
- Mark and Sweep (belgilash va tozalash)
- Copying (nusxalash)
- Generational (avlodlar)
- Reference Counting (referenslar hisoblash)
Afzalliklari:
- Xotira oqib ketish ehtimolini kamaytiradi.
- Dasturchi uchun xotira boshqaruvini soddalashtiradi.
- Ilovaning ishonchliligini oshiradi.
Kamchiliklari:
- To'plash jarayonida pauza (Stop-the-world voqealari) yuzaga kelishi mumkin.
- Bajarilish vaqti oldindan aytib bo'lmaydi.
- Qo'shimcha tizim resurslarini talab qilishi mumkin.