Sobes.tech
Senior

V jakém pořadí jsou ve funkci vykonávány více defer?

sobes.tech AI

Odpověď od AI

V jazyce Go se více volání defer v jedné funkci provádí v pořadí LIFO (Last In, First Out) — tedy poslední odložené volání bude provedeno jako první při opuštění funkce.

Příklad:

func příklad() {
    defer fmt.Println("První")
    defer fmt.Println("Druhý")
    defer fmt.Println("Třetí")
}
// Při opuštění příklad() se vypíše:
// Třetí
// Druhý
// První