recover в main и паника в горутине

Что выведетMiddleбесплатно05-t010

В main стоит defer с recover, а паника происходит внутри отдельной горутины. Что выведет программа и почему?

main.gogo
1package main2 3import "time"4 5func main() {6	defer func() {7		if r := recover(); r != nil {8			println(r)9		}10	}()11 12	go func() {13		panic(42)14	}()15 16	time.Sleep(time.Hour)17}
Чем закончится программа?
Сначала подумай без запуска — на собесе компилятора не будет.