Sobes.tech
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.