Junior — Middle
Көптөгөн кечиктирилген тапшырмаларды (defer) кезектесип аткаруу кандай болот?
sobes.tech AI
AIден жооп
В Go ключевое слово defer используется для отложенного вызова функции, который выполняется после завершения окружающей функции. Если в одной функции несколько defer, они выполняются в порядке, обратном их объявлению — то есть стек вызовов.
Пример:
func example() {
defer fmt.Println("первая отложенная")
defer fmt.Println("вторая отложенная")
fmt.Println("выполнение функции")
}
Вывод будет:
выполнение функции
вторая отложенная
первая отложенная
Таким образом, несколько отложенных задач выполняются последовательно в обратном порядке их объявления.