Junior — Middle
Milyen esetekben szükséges elkapni és kezelni a pánik hibákat egy programban?
sobes.tech MI
Válasz az MI-től
A pánik (panic) hibák kezelésére akkor van szükség, amikor garantálni kell a program helyes befejezését vagy a kritikus hibák utáni helyreállítást, hogy elkerüljük a váratlan leállást.
Például:
- Szerveralkalmazásokban, hogy az egész szolgáltatás ne omoljon össze egy hiba miatt.
- Külső erőforrásokkal való munkánál, hogy helyesen zárja be a fájlokat, kapcsolatokat.
- Könyvtárakban, hogy lehetőséget adjon a felhasználónak a kritikus hibák kezelésére.
Ehhez a recover() függvényt használják a defer-ben, amely elkapja a pánikot és lehetővé teszi a program folytatását vagy helyes befejezését.
Példa:
func safeFunction() {
defer func() {
if r := recover(); r != nil {
fmt.Println("Elkapott pánik:", r)
}
}()
// Kód, ami pánikot okozhat
panic("valami rosszul sült el")
}