Sobes.tech
Junior — Middle

Honnan szerzi a hegy az indításkor kiosztott memóriát?

sobes.tech MI

Válasz az MI-től

A Go nyelvben a goroutine a stackből kap dedikált memóriát, amit a Go futásideje kezel. A hagyományos szálaktól eltérően, a goroutine-ok kezdetben nagyon kicsi stackkel rendelkeznek (általában néhány kilobyte), amely dinamikusan bővíthető és összenyomható szükség szerint.

Amikor egy új goroutine jön létre, a futásidő egy kis stacket allokál neki a heapen, majd szükség szerint növeli annak méretét. Ez lehetővé teszi, hogy több ezer, sőt millió goroutine fusson minimális memóriafelhasználással.

Így a goroutine számára a memória a futásidő által kezelt memória területről kerül allokálásra, nem közvetlenül a rendszer stackjéből.