Junior — Middle
Go tilida defer tuzilmasining ishlash prinsipi va qo'llanilishini tushuntirib bera olasizmi?
sobes.tech AI
AIdan javob
Go tilida defer kalit so'zi, funksiyani kechiktirish uchun ishlatiladi: u hozirgi funksiyadan chiqish paytida bajariladi, chiqish qanday bo'lishidan qat'i nazar (odatda yoki xato bilan). Bu resurslarni bo'shatish, fayllarni yopish, mutexlarni ochish va boshqa tozalash operatsiyalari uchun qulay.
Misol:
func readFile(filename string) error {
file, err := os.Open(filename)
if err != nil {
return err
}
defer file.Close() // fayl funksiyadan chiqishda yopiladi
// fayl bilan ishlash
return nil
}
Shu tarzda, defer toza va xavfsiz kod yozishga yordam beradi, muhim yakuniy harakatlarni bajarilishini kafolatlaydi.