Junior — Middle
Ko odlučuje da li je dozvoljeno postavljanje određenog objekta u memoriju?
sobes.tech АИ
Одговор од АИ
Dodela objekata u memoriji u Go (Golang) je određena od strane kompajlera i runtime okruženja.
- Kompajler odlučuje gde da smesti promenljivu: u stek ili u hrpu, na osnovu analize njenog opsega i trajanja života (analiza bekstva).
- Ako promenljiva «pobeže» iz funkcije (npr. vraća se ili se koristi nakon izlaska iz funkcije), ona se smešta u hrpu.
- U suprotnom, u stek, što je brže.
Tako, odluka o smeštaju objekta u memoriju se donosi od strane kompajlera u fazi kompilacije, a runtime upravlja alokacijom i sakupljanjem smeća za objekte u hrpi.