Senior
Čo je to gorutina a ako funguje?
sobes.tech AI
Odpoveď od AI
Gorutina je ľahký vlákno na vykon v jazyku Go, ktoré spravuje runtime Go namiesto operačného systému. Umožňuje spúšťanie funkcií paralelne s minimálnymi nákladmi na pamäť a časom prepínania kontextu.
Keď zavoláte funkciu kľúčovým slovom go, vytvorí sa nová gorutina, ktorá beží súčasne s ostatnými. Runtime Go automaticky rozdeľuje gorutiny na dostupné vlákna OS.
Príklad:
package main
import (
"fmt"
"time"
)
func sayHello() {
fmt.Println("Ahoj z gorutiny")
}
func main() {
go sayHello() // spustí gorutinu
time.Sleep(time.Second) // čaká, aby gorutina mohla dokončiť
}
Gorutiny sú efektívne na implementáciu konkurenčných úloh, ako je spracovanie požiadaviek, paralelné výpočty a pod.