Sobes.tech
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).