Sobes.tech
Junior

¿Qué hace la construcción default en la instrucción select?

sobes.tech AI

Respuesta de la IA

La construcción default en la instrucción select ejecuta un bloque de código si ninguno de los otros canales listados en select está listo para lectura o escritura en ese momento. Esto evita que la goroutine se bloquee.

Ejemplo:

// Ejemplo con default
select {
case msg1 := <-channel1:
	fmt.Println("Mensaje recibido 1:", msg1)
case msg2 := <-channel2:
	fmt.Println("Mensaje recibido 2:", msg2)
default:
	fmt.Println("Los canales no están listos, se ejecuta default")
}

El uso de default hace que la operación select no bloquee. Si no hay default, select esperará hasta que uno de los canales esté listo.