Junior — Middle
Ako sa v programe inicializuje a vykonáva nová gorutina?
sobes.tech AI
Odpoveď od AI
V jazyku Go sa vytvára nová gorutina pomocou kľúčového slova go, za ktorým nasleduje volanie funkcie alebo metódy. Tým sa vytvorí ľahký vykonávací tok, ktorý beží paralelne s hlavným programom.
Inicializácia a spustenie gorutiny prebieha takto:
- Pred funkciou sa zavolá
go:go myFunction(). - Plánovač Go vytvorí novú gorutinu a vloží ju do fronty na vykonanie.
- Gorutina začne asynchrónne bežať, nezávisle od hlavného programu.
Príklad:
func sayHello() {
fmt.Println("Ahoj z gorutiny")
}
func main() {
go sayHello() // spustíme gorutinu
fmt.Println("Ahoj z main")
time.Sleep(time.Second) // dáme gorutine čas na dokončenie
}
Je dôležité si uvedomiť, že gorutiny sú veľmi ľahké v porovnaní s vláknami OS a ich plánovanie a prepínanie je riadené runtime-om Go, čo umožňuje efektívne využívanie zdrojov.