Sobes.tech
Junior

Co dělá konstrukce default v příkazu select?

sobes.tech AI

Odpověď od AI

Konstrukce default v příkazu select spouští blok kódu, pokud žádný z ostatních kanálů uvedených v select není momentálně připraven ke čtení nebo zápisu. To zabraňuje zablokování gorutiny.

Příklad:

// Příklad s default
select {
case msg1 := <-channel1:
	fmt.Println("Přijatá zpráva 1:", msg1)
case msg2 := <-channel2:
	fmt.Println("Přijatá zpráva 2:", msg2)
default:
	fmt.Println("Kanály nejsou připravené, spuštěn default")
}

Použití default činí operaci select neblokující. Pokud default chybí, select bude čekat, dokud jeden z kanálů nebude připraven.