Sobes.tech
Senior
36

Бір функцияда бірнеше defer қалай орындалады?

Сұралған компаниялар
А7

AI-дан жауап

sobes.tech AI

В Go несколько вызовов defer в одной функции выполняются в порядке LIFO (Last In, First Out) — то есть последний отложенный вызов будет выполнен первым при выходе из функции.

Пример:

func example() {
    defer fmt.Println("Первый")
    defer fmt.Println("Второй")
    defer fmt.Println("Третий")
}
// При выходе из example() будет выведено:
// Третий
// Второй
// Первый