Sobes.tech
Junior — Middle

¿De qué maneras se realiza la interacción entre las goroutines en el lenguaje de programación?

sobes.tech AI

Respuesta de la IA

En el lenguaje Go, la interacción entre goroutines generalmente se realiza a través de canales (channels). Los canales permiten transmitir datos de manera segura entre goroutines, asegurando la sincronización y el intercambio de mensajes.

Ejemplo de uso de un canal:

package main

import (
    "fmt"
)

func worker(ch chan string) {
    ch <- "listo"
}

func main() {
    ch := make(chan string)
    go worker(ch)
    msg := <-ch
    fmt.Println(msg)
}

Además de los canales, se pueden usar otros mecanismos de sincronización, como mutex del paquete sync, pero los canales se consideran la forma idiomática de comunicación entre goroutines en Go.