Sobes.tech
Junior

Ko dara noklusējuma konstrukcija select instrukcijā?

sobes.tech AI

Atbilde no AI

select operatora konstrukcija default izpilda koda bloku, ja tad navis no citiem select uzskaitītajiem kanāliem šajā brīdī nav gatavi lasīšanai vai rakstīšanai. Tas novērš gorutīnas bloķēšanu.

Piemērs:

// Piemērs ar default
select {
case msg1 := <-channel1:
	fmt.Println("Saņemta ziņa 1:", msg1)
case msg2 := <-channel2:
	fmt.Println("Saņemta ziņa 2:", msg2)
default:
	fmt.Println("Kanāli nav gatavi, izpildīts default")
}

default izmantošana padara select operāciju neblokējošu. Ja default nav, select gaidīs, līdz viens no kanāliem kļūs gatavs.