Оператор panic в Golang сигнализирует о том, что код не может решить текущую проблему, и останавливает выполнение приложения. 2 После вызова оператора выполняются все отложенные функции, и программа завершается с сообщением о причине паники и трассировки стека. 2
Когда некоторая функция func вызывает panic, в программе происходит следующее: 4
Чтобы обработать панику и вернуть приложение к нормальному выполнению, предотвратив его внезапное завершение, используется механизм восстановления (recovery) при помощи встроенной функции recover. 4