Sobes.tech
Junior — Middle

Peut-on avoir plusieurs opérateurs defer dans une seule fonction?

sobes.tech IA

Réponse de l'IA

Oui, en Go, il est possible d'utiliser plusieurs opérateurs defer dans une même fonction. Tous les appels différés seront exécutés dans l'ordre inverse (LIFO) après la fin de la fonction. Cela est pratique pour libérer des ressources, fermer des fichiers, déverrouiller des mutex, etc.

Exemple:

func exemple() {
    defer fmt.Println("Premier defer")
    defer fmt.Println("Deuxième defer")
    fmt.Println("Dans la fonction")
}

// La sortie sera:
// Dans la fonction
// Deuxième defer
// Premier defer