Junior — Middle
Hogyan történik egy új goroutine inicializálása és végrehajtása egy programban?
sobes.tech MI
Válasz az MI-től
A Go nyelvben egy új goroutine-t a go kulcsszó segítségével hozunk létre, amelyet egy függvény vagy metódus hívása követ. Ez egy könnyű végrehajtási szálat hoz létre, amely párhuzamosan működik a fő programmal.
A goroutine inicializálása és indítása így történik:
- A
gohívása a függvény előtt:go myFunction(). - A Go ütemezője létrehoz egy új goroutine-t, és beállítja végrehajtási sorba.
- A goroutine aszinkron módon kezd el futni, függetlenül a fő programtól.
Példa:
func sayHello() {
fmt.Println("Helló a goroutine-ból")
}
func main() {
go sayHello() // goroutine indítása
fmt.Println("Helló a main-ből")
time.Sleep(time.Second) // időt adunk a goroutine-nak a befejezéshez
}
Fontos megjegyezni, hogy a goroutine-ok nagyon könnyűek a rendszer szálaihoz képest, és ütemezésüket valamint kontextusváltásukat a Go futásideje kezeli, ami hatékony erőforrás-használatot tesz lehetővé.