Sobes.tech
Senior

Qu'est-ce qu'une goroutine et comment fonctionne-t-elle?

sobes.tech IA

Réponse de l'IA

Une goroutine est un fil d'exécution léger dans le langage Go, géré par le runtime de Go plutôt que par le système d'exploitation. Elle permet d'exécuter des fonctions en parallèle avec un minimum de mémoire et de temps de commutation.

Lorsque vous appelez une fonction avec le mot-clé go, une nouvelle goroutine est créée, qui s'exécute simultanément avec d'autres. Le runtime de Go répartit automatiquement les goroutines entre les threads disponibles du système d'exploitation.

Exemple:

package main
import (
    "fmt"
    "time"
)

func sayHello() {
    fmt.Println("Bonjour depuis la goroutine")
}

func main() {
    go sayHello() // lance la goroutine
    time.Sleep(time.Second) // attend pour que la goroutine ait le temps de s'exécuter
}

Les goroutines sont efficaces pour réaliser des tâches concurrentes, telles que le traitement de requêtes, les calculs parallèles, etc.