Sobes.tech
Junior — Middle

Select yapısı içinde 'default' anahtar kelimesinin amacı nedir?

sobes.tech yapay zeka

AI'dan gelen yanıt

Go'da select yapısında, default anahtar kelimesi, hiçbir kanalın işlem için hazır olmadığı durumda kullanılmak üzere tasarlanmıştır (okuma veya yazma). Hiçbir kanal erişilebilir değilse, default bloğu hemen çalışır ve böylece goroutine'in engellenmesi önlenir.

Örnek:

select {
case msg := <-ch1:
    fmt.Println("ch1'den mesaj alındı:", msg)
case ch2 <- 42:
    fmt.Println("ch2'ye mesaj gönderildi")
default:
    fmt.Println("Hiçbir kanal hazır değil, default çalışıyor")
}

Bu şekilde, default kanal seçiminde bloklamayı önler.