Junior — Middle
Akými metódami možno zachytiť a spracovať chybu typu panic v programe?
sobes.tech AI
Odpoveď od AI
V jazyku Go sa mechanizmus recover spolu s defer používa na zachytenie a spracovanie chýb typu panic. Funkcia recover umožňuje zachytiť panic a zabrániť neočakávanému ukončeniu programu.
Príklad:
func safeFunction() {
defer func() {
if r := recover(); r != nil {
fmt.Println("Zachytený panic:", r)
}
}()
// Kód, ktorý môže spôsobiť panic
panic("niečo sa pokazilo")
}
func main() {
safeFunction()
fmt.Println("Program pokračuje")
}
V tomto príklade defer odkladá vykonanie anonymnej funkcie, ktorá volá recover. Ak dôjde k panic v safeFunction, bude zachytená a spracovaná, čo umožní programu pokračovať v práci.