Sobes.tech
Junior — Middle

Qay tarzda chiqindilarni yig'uvchi ishlaydi va qaysi xotira sohalarini tozalaydi: heap yoki stack?

sobes.tech AI

AIdan javob

Go'da Çöp Toplayıcı (Garbage Collector), proqram tərəfindən artıq istifadə edilməyən yaddaşı avtomatik olaraq azad edir. O, dinamik şəkildə ayrılmış obyektlərin yerləşdiyi heap yaddaş sahəsi ilə işləyir.

Stack (yığım) isə yerli dəyişənlər və funksiyaların çağırışları üçün yaddaş sahəsidir və funksiyalara giriş və çıxış zamanı avtomatik idarə olunur; çöp toplayıcı onu təmizləmir.

Go'da çöp toplayıcısının işləmə prinsipi, əlçatanlıq izləmə algoritminə əsaslanır: o, kök nöqtələrindən (yığım, qlobal dəyişənlər) əldə edilə bilən bütün obyektləri tapır və onlara istinad olmayanları silir.

Beləliklə, çöp toplayıcı heap-i təmizləyir və yığım çağrı sistemi tərəfindən idarə olunur və avtomatik olaraq sərbəst buraxılır.