Sobes.tech
Junior — Middle

Kada se u procesu izvršavanja Go koda poziva operator defer?

sobes.tech АИ

Одговор од АИ

Instrukcija defer u Go jeziku odlaže izvršenje navavljene funkcije do trenutka izlaska iz okružujuće funkcije u kojoj je deklarisana. Drugim rečima, poziv funkcije prosleđene defer-u dešava se odmah pre povratka iz trenutne funkcije. Ovo je korisno za oslobađanje resursa, zatvaranje fajlova, otključavanje mutexa itd.

Primer:

func primer() {
    defer fmt.Println("Odloženi poziv")
    fmt.Println("Glavni kod")
}
// Izlaz će biti:
// Glavni kod
// Odloženi poziv