Junior — Middle
Spiega cos'è una goroutine e come viene utilizzata nella programmazione
sobes.tech AI
Risposta dell'AI
Una goroutine è un'unità di esecuzione leggera simile a un thread nel linguaggio Go. Permette di eseguire funzioni in parallelo, creandole con costi minimi rispetto ai thread di sistema.
Le goroutine sono gestite dal runtime di Go, che distribuisce efficacemente la loro esecuzione sui thread di sistema. Ciò semplifica la scrittura di codice concorrente e aumenta le prestazioni.
Esempio di utilizzo di una goroutine:
package main
import (
"fmt"
"time"
)
func sayHello() {
fmt.Println("Ciao dalla goroutine")
}
func main() {
go sayHello() // avvia la goroutine
time.Sleep(time.Second) // diamo tempo alla goroutine di eseguire
}
In questo esempio, la funzione sayHello viene eseguita come goroutine usando la parola chiave go. La funzione principale aspetta un secondo affinché la goroutine possa completare l'output.