Junior — Middle
Programda panic türündeki hatayı yakalamak ve işlemek için hangi yöntemler kullanılabilir?
sobes.tech yapay zeka
AI'dan gelen yanıt
Go dilinde, panic türündeki hataları yakalamak ve işlemek için recover mekanizması defer ile birlikte kullanılır. recover fonksiyonu, bir panik durumunu yakalamaya ve programın ani sonlanmasını önlemeye olanak tanır.
Örnek:
func safeFunction() {
defer func() {
if r := recover(); r != nil {
fmt.Println("Yakalanan panik:", r)
}
}()
// panic oluşturabilecek kod
panic("bir şeyler ters gitti")
}
func main() {
safeFunction()
fmt.Println("Program çalışmaya devam ediyor")
}
Bu örnekte, defer anonim bir fonksiyonun çalışmasını erteler ve bu fonksiyon recover çağırır. Eğer safeFunction içinde bir panik olursa, bu yakalanır ve işlenir, böylece program çalışmaya devam edebilir.