Почему вызов defer func() { recover() }()
успешно восстанавливает пародию goroutine, но вызов defer recover()
not?
В качестве минималистического примера этот код не паникует
package main
func main() {
defer func() { recover() }()
panic("panic")
}
Однако, заменив анонимную функцию на восстановление непосредственно паники
package main
func main() {
defer recover()
panic("panic")
}