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