Sobes.tech
Junior

Ce face construcția default în instrucțiunea select?

sobes.tech AI

Răspuns de la AI

Construcția default în instrucțiunea select execută un bloc de cod dacă niciunul dintre celelalte canale enumerate în select nu este gata pentru citire sau scriere în acel moment. Acest lucru previne blocarea goroutine-ului.

Exemplu:

// Exemplu cu default
select {
case msg1 := <-channel1:
	fmt.Println("Mesaj primit 1:", msg1)
case msg2 := <-channel2:
	fmt.Println("Mesaj primit 2:", msg2)
default:
	fmt.Println("Canalele nu sunt gata, default executat")
}

Utilizarea default face ca operația select să fie non-blocantă. Dacă default lipsește, select va aștepta până când unul dintre canale va fi gata.