Middle
In welcher Reihenfolge werden die deferred Funktionen in Go ausgeführt?
sobes.tech KI
Antwort von AI
Verzögerte Funktionen werden in umgekehrter Reihenfolge ausgeführt, also LIFO (Last-In, First-Out).
package main
import "fmt"
func main() {
defer fmt.Println("erst") // Zuletzt definiert
defer fmt.Println("zweiter") // Vorletzter definiert
defer fmt.Println("dritter") // Erstellt
}
Beim Verlassen des Geltungsbereichs (Funktion), in dem defer deklariert wurde, werden die verzögerten Funktionen in umgekehrter Reihenfolge aufgerufen. Dies ist nützlich, um Ressourcen freizugeben, Dateien zu schließen, Mutexes zu entsperren und andere Aufräumarbeiten durchzuführen.