Sobes.tech
Junior — Middle

Jaký je účel klíčového slova 'default' uvnitř konstrukce select?

sobes.tech AI

Odpověď od AI

V konstrukci select v jazyce Go je klíčové slovo default používáno k ošetření případu, kdy žádný z kanálů není připraven k operaci (čtení nebo zápis). Pokud žádný kanál není dostupný, blok default se provede okamžitě, což umožňuje zabránit zablokování gorutiny.

Příklad:

select {
case msg := <-ch1:
    fmt.Println("Přijata zpráva z ch1:", msg)
case ch2 <- 42:
    fmt.Println("Zpráva odeslána do ch2")
default:
    fmt.Println("Žádný kanál není připraven, provádí se default")
}

Tímto způsobem default umožňuje provést neblokující výběr kanálů.