Sobes.tech
Junior — Middle

Bir fonksiyon içinde birden fazla defer operatörü olabilir mi?

sobes.tech yapay zeka

AI'dan gelen yanıt

Evet, Go dilinde bir fonksiyon içinde birden fazla defer operatörü kullanılabilir. Tüm ertelenmiş çağrılar, fonksiyon tamamlandıktan sonra ters sırayla (LIFO) yürütülecektir. Bu, kaynakları serbest bırakmak, dosyaları kapatmak, mutexleri kilidini açmak gibi işlemler için kullanışlıdır.

Örnek:

func örnek() {
    defer fmt.Println("Birinci defer")
    defer fmt.Println("İkinci defer")
    fmt.Println("Fonksiyon içinde")
}

// Çıktı şu şekilde olacaktır:
// Fonksiyon içinde
// İkinci defer
// Birinci defer