Sobes.tech
Junior

Чӣ гуна ҷамъоварии партовҳо (Garbage Collector)?

sobes.tech AI

Ҷавоб аз AI

Механизми автоматии идоракунии хотира, ки объектҳои нолозимро дар хати ёдгирӣ озод мекунад.

Принсипҳои кор:

  • Таҳқиқи дастрасии объектҳо: Объектҳоро, ки ба онҳо объектҳои зинда (дастрас) аз решаҳо (масалан, стеки сӯзишворӣ) ишора мекунанд, пайгирӣ мекунад.
  • Озод кардани объектҳои дастраснашаванда: Объектҳое, ки ба онҳо ишора намешавад, ҳамчун "холӣ" ҳисобида мешаванд ва ёдгории онҳо метавонад дубора истифода шавад.

Намудҳои ҷамъкунандаи холӣ (зависит аз забон/платформа):

  • Mark and Sweep: Объектҳои дастрасро нишон мекунад (тамғакоғозӣ), сипас ба хати ёдгирӣ мегузарад ва онҳое, ки нишон дода нашудаанд, озод мекунад (тазим). Мумкин аст, ки ба парчамсозии хотира оварда расонад.
  • Copying: Хати ёдгириро ба ду қисм тақсим мекунад. Объектҳои зиндаро ба қисми нав кӯчонида, пас қисми кӯҳнаро тоза мекунад. Манъ мекунад парчамсозиро, аммо бештар хотира талаб мекунад.
  • Генерасионӣ: Объектҳоро ба синну солҳо тақсим мекунад. Бештар холиро дар "ҷавон" генерасия ҷамъ мекунад, ки дар он бештари объектҳо кӯтоҳ зиндагӣ мекунанд.

Фоидаҳо:

  • Кам кардани эҳтимолияти ҷорӣ шудани хотира.
  • Раванди таҳияро содда мекунад (назар ба озод кардани хотираи равшан лозим нест).

Норасоиҳо:

  • Мумкин аст, ки дар вақти ҷамъоварӣ таъхирҳо (паузаҳо) ба вуҷуд оранд.
  • Вақти ҷамъоварӣ пешгӯишаванда нест.