¿Qué función cumplen los canales en la concurrencia de Go?
Un mismo canal mezcla libremente valores de tipos no relacionados.
Son colas persistentes almacenadas únicamente en el disco.
Reemplazan las goroutines y ejecutan por sí mismos todo el código concurrente.
Permiten comunicar y sincronizar datos entre goroutines mediante un comportamiento FIFO.