Sobes.tech
Junior — Middle

De unde obține muntele memoria alocată la pornire?

sobes.tech AI

Răspuns de la AI

O goroutine în Go primește memorie alocată din stiva, care este gestionată de runtime-ul Go. Spre deosebire de firele tradiționale, goroutine-urile au inițial o stivă foarte mică (de obicei câțiva kilobytes), care poate fi extinsă și comprimată dinamic după necesitate.

Când se creează o nouă goroutine, runtime-ul îi alocă o mică stivă pe heap, apoi o mărește dacă este necesar. Acest lucru permite rularea a mii și chiar milioane de goroutine-uri cu un consum minim de memorie.

Astfel, memoria pentru goroutine este alocată din zona de memorie gestionată de runtime, și nu direct din stiva sistemului.