Sobes.tech
Senior

Kādā secībā tiek izpildīti vairāki defer vienā funkcijā?

sobes.tech AI

Atbilde no AI

Go valodā vairākas defer izsaukšanas vienā funkcijā tiek izpildītas LIFO (Last In, First Out) secībā — tas ir, pēdējais atliktais izsaukums tiks izpildīts pirmais, iznākot no funkcijas.

Piemērs:

func piemērs() {
    defer fmt.Println("Pirmais")
    defer fmt.Println("Otrais")
    defer fmt.Println("Trešais")
}
// Iznākot no piemērs() tiks izvadīts:
// Trešais
// Otrais
// Pirmais