Junior — Middle
De que maneiras a interação entre goroutines é realizada na linguagem de programação?
sobes.tech IA
Resposta da IA
Na linguagem Go, a interação entre goroutines geralmente é feita através de canais (channels). Os canais permitem transmitir dados de forma segura entre goroutines, garantindo sincronização e troca de mensagens.
Exemplo de uso de um canal:
package main
import (
"fmt"
)
func worker(ch chan string) {
ch <- "pronto"
}
func main() {
ch := make(chan string)
go worker(ch)
msg := <-ch
fmt.Println(msg)
}
Além dos canais, podem ser utilizados outros mecanismos de sincronização, como mutex do pacote sync, mas os canais são considerados a forma idiomática de comunicação entre goroutines em Go.