Sobes.tech
Junior — Middle

Cum se inițializează și se execută o gorutină nouă într-un program?

sobes.tech AI

Răspuns de la AI

În Go, o gorutină nouă se creează folosind cuvântul cheie go, urmat de apelarea unei funcții sau metode. Acest lucru creează un fir de execuție ușor care rulează în paralel cu programul principal.

Inițializarea și pornirea unei gorutine se face astfel:

  1. Se apelează go înaintea funcției: go myFunction().
  2. Planificatorul Go creează o nouă gorutină și o plasează în coada de execuție.
  3. Gorutina începe să ruleze asincron, independent de programul principal.

Exemplu:

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

func main() {
    go sayHello() // pornim gorutina
    fmt.Println("Salut din main")
    time.Sleep(time.Second) // oferim gorutinei timp să se execute
}

Este important să rețineți că gorutinele sunt foarte ușoare comparativ cu firele de execuție ale sistemului de operare, iar planificarea și schimbarea contextului sunt gestionate de runtime-ul Go, ceea ce permite utilizarea eficientă a resurselor.