Sobes.tech
Junior — Middle

Kdy je v průběhu vykonávání Go kódu volán operátor defer?

sobes.tech AI

Odpověď od AI

Příkaz defer v jazyce Go odkládá provedení určené funkce do okamžiku, kdy opustí okolní funkce, ve které je deklarována. Jinými slovy, volání funkce předané defer proběhne těsně před návratem z aktuální funkce. To je užitečné pro uvolnění zdrojů, uzavření souborů, odemknutí mutexů atd.

Příklad:

func příklad() {
    defer fmt.Println("Odložené volání")
    fmt.Println("Hlavní kód")
}
// Výstup bude:
// Hlavní kód
// Odložené volání