Junior — Middle
¿Cómo se puede finalizar el trabajo con un canal en el programa?
sobes.tech AI
Respuesta de la IA
En Go, para finalizar el trabajo con un canal se utiliza la función close(). Cerrar un canal indica a los receptores que no se enviarán más valores nuevos. Después de cerrar el canal, intentar enviar en él provocará un pánico, pero leer desde un canal cerrado es posible: devolverá un valor cero y false en el segundo valor de retorno.
Ejemplo:
ch := make(chan int)
ngo func() {
ch <- 42
close(ch) // Cerramos el canal después de enviar
}()
for val := range ch {
fmt.Println(val) // Imprimirá 42
}
Por lo tanto, para finalizar el trabajo con un canal, se debe llamar a close(channel).