Senior
В какъв ред се изпълняват няколко defer в една функция?
sobes.tech AI
Отговор от AI
В Go, няколко извиквания на defer в една функция се изпълняват в ред LIFO (Last In, First Out) — тоест, последното отложено извикване ще бъде изпълнено първо при изход от функцията.
Пример:
func пример() {
defer fmt.Println("Първи")
defer fmt.Println("Втори")
defer fmt.Println("Трети")
}
// При изход от пример() ще се изведе:
// Трети
// Втори
// Първи