Junior — Middle
Comment l'initialisation et l'exécution d'une nouvelle goroutine sont-elles effectuées dans un programme?
sobes.tech IA
Réponse de l'IA
En Go, une nouvelle goroutine est créée à l’aide du mot-clé go, suivi de l’appel d’une fonction ou méthode. Cela crée un fil d’exécution léger qui fonctionne en parallèle avec le programme principal.
L’initialisation et le lancement d’une goroutine se font ainsi :
- On appelle
goavant la fonction :go myFunction(). - Le planificateur de Go crée une nouvelle goroutine et la met en file d’attente pour l’exécuter.
- La goroutine commence à s’exécuter de manière asynchrone, indépendamment du programme principal.
Exemple :
func sayHello() {
fmt.Println("Bonjour depuis la goroutine")
}
func main() {
go sayHello() // démarrer la goroutine
fmt.Println("Bonjour depuis main")
time.Sleep(time.Second) // donner du temps à la goroutine pour s’exécuter
}
Il est important de se rappeler que les goroutines sont très légères comparées aux threads du système d’exploitation, et leur planification et leur commutation sont gérées par le runtime de Go, ce qui permet d’utiliser efficacement les ressources.