Junior — Middle
Aké sú výhody používania gorutín v porovnaní s vláknami (threads)?
sobes.tech AI
Odpoveď od AI
Gorutiny v jazyku Go sú ľahké vlákna spravované prostredím Go, nie operačným systémom. Ich výhody oproti klasickým vláknam:
- Menšie využitie pamäte: Gorutiny zaberajú niekoľko kilobajtov pamäte, zatiaľ čo vlákna — megabajty.
- Rýchle vytváranie a prepínanie: Spustenie a prepínanie medzi gorutinami je oveľa rýchlejšie.
- Jednoduchá synchronizácia: Go poskytuje kanály na bezpečnú výmenu dát medzi gorutinami, čo zjednodušuje konkurenčné programovanie.
- Škálovateľnosť: Môžete spustiť tisíce alebo aj milióny gorutín súčasne.
Príklad vytvorenia gorutiny:
func sayHello() {
fmt.Println("Ahoj z gorutiny")
}
func main() {
go sayHello() // spúšťame gorutinu
time.Sleep(time.Second) // čakáme, aby gorutina mohla vykonať
}