Junior — Middle
Können Sie das Funktionsprinzip und die Anwendung der defer-Konstruktion in der Programmiersprache Go erklären?
sobes.tech KI
Antwort von AI
In Go wird das Schlüsselwort defer verwendet, um eine Funktion verzögert aufzurufen — sie wird beim Verlassen der aktuellen Funktion ausgeführt, unabhängig davon, wie der Austritt erfolgt (normal oder durch Fehler). Das ist praktisch, um Ressourcen freizugeben, Dateien zu schließen, Mutexes zu entsperren und andere Aufräumarbeiten durchzuführen.
Beispiel:
func readFile(filename string) error {
file, err := os.Open(filename)
if err != nil {
return err
}
defer file.Close() // Datei wird beim Verlassen der Funktion geschlossen
// Arbeit mit der Datei
return nil
}
Auf diese Weise hilft defer, saubereren und sichereren Code zu schreiben, indem es die Ausführung wichtiger Abschlussaktionen garantiert.