Sobes.tech
Junior

Cine gestionează goroutine-urile în limbajul Go?

sobes.tech AI

Răspuns de la AI

Gorutinele în limbajul Go sunt gestionate de planificatorul încorporat (scheduler) al runtime-ului Go. Acest planificator se ocupă de distribuirea gorutinelelor pe firele de sistem (OS threads) și asigură executarea concurentă.

Puncte cheie:

  • Planificatorul Go funcționează la nivel de utilizator, nu la nivel de nucleu al sistemului de operare.
  • Schimbă eficient între gorutine, permițând rularea a mii de sarcini ușoare.
  • Dezvoltatorul pornește pur și simplu o gorutină cu go și nu gestionează direct firele.

Exemplu de pornire a unei gorutine:

func sayHello() {
    fmt.Println("Salut din gorutină")
}

func main() {
    go sayHello() // planificatorul va porni această gorutină
    time.Sleep(time.Second) // pentru a da timp gorutinei să ruleze
}