Sobes.tech
Junior

Milyen szerepet tölt be a defer szerkezet a Go nyelvben?

sobes.tech MI

Válasz az MI-től

A Go nyelvben a defer szerkezetet arra használják, hogy késleltetett végrehajtásra szánt függvényeket hívjanak meg: ezek a függvények a jelenlegi függvényből való kilépéskor kerülnek meghívásra, függetlenül attól, hogy hogyan történik a kilépés (normál vagy hiba miatt).

Ez hasznos az erőforrások felszabadítására, fájlok bezárására, mutexek feloldására és más tisztítási műveletekre.

Példa:

func readFile() error {
    file, err := os.Open("file.txt")
    if err != nil {
        return err
    }
    defer file.Close() // a fájl a függvény kilépésekor bezáródik

    // fájllal való munka
    return nil
}

Így a defer segít garantálni, hogy fontos befejező műveletek végrehajtódnak, javítva az erőforrások kezelését és a hibakezelést.