Senior
¿Qué se puede usar para transmitir datos entre goroutines?
sobes.tech AI
Respuesta de la IA
Para transmitir datos entre goroutines en Go, generalmente se utilizan canales (channels). Los canales proporcionan una sincronización segura y transmisión de datos, permitiendo que las goroutines intercambien valores sin bloqueos explícitos.
Ejemplo de uso de un canal:
ch := make(chan int)
// Envío de datos en una goroutine
go func() {
ch <- 42
}()
// Recepción de datos
value := <-ch
fmt.Println(value) // 42
Además de los canales, se puede usar memoria compartida con sincronización mediante mutex del paquete sync, pero los canales se consideran una forma más idiomática en Go.