Junior
Go tilida defer konstruktsiyasi qanday rol o'ynaydi?
sobes.tech AI
AIdan javob
Go tilida, defer tuzilishi, funksiyadan chiqish vaqtida chaqiriladigan funksiyalarni kechiktirish uchun ishlatiladi — u hozirgi funksiyadan chiqish paytida chaqiriladi, chiqish qanday bo'lishidan qat'i nazar (odatda yoki xato tufayli).
Bu resurslarni bo'shatish, fayllarni yopish, mutexlarni ochish va boshqa tozalash operatsiyalar uchun qulay.
Misol:
func readFile() error {
file, err := os.Open("file.txt")
if err != nil {
return err
}
defer file.Close() // fayl funksiyadan chiqishda yopiladi
// fayl bilan ishlash
return nil
}
Shu tarzda, defer muhim yakuniy harakatlarni bajarilishini ta'minlaydi, resurslarni boshqarish va xatoliklarni qayta ishlashni yaxshilaydi.