Junior — Middle
U kom slučaju dolazi do automatskog odabira podrazumevane opcije u konstrukciji select u programskom jeziku?
sobes.tech АИ
Одговор од АИ
U jeziku Go, konstrukcija select se koristi za rad sa više kanala istovremeno. Automatski izbor opcije podrazumevano dešava se ako u select postoji blok default i nijedan od kanala nije spreman za operaciju (čitanje ili pisanje). U tom slučaju, izvršenje odmah prelazi na blok default, bez blokiranja gorutine.
Primer:
select {
case msg := <-ch1:
fmt.Println("Primljeno iz ch1:", msg)
case ch2 <- 42:
fmt.Println("Poslato u ch2")
default:
fmt.Println("Nijedan kanal nije spreman, izvršava se default")
}
Ako nedostaje blok default, select će čekati dok jedan od kanala ne postane spreman.