Junior — Middle
Como é feita a inicialização e execução de uma nova goroutine no programa?
sobes.tech IA
Resposta da IA
No Go, uma nova goroutine é criada usando a palavra-chave go, seguida da chamada de uma função ou método. Isso cria um fio de execução leve que funciona em paralelo com o programa principal.
A inicialização e o início de uma goroutine são feitos assim:
- Chama-se
goantes da função:go myFunction(). - O agendador do Go cria uma nova goroutine e a coloca na fila para execução.
- A goroutine começa a executar de forma assíncrona, independentemente do programa principal.
Exemplo:
func sayHello() {
fmt.Println("Olá do goroutine")
}
func main() {
go sayHello() // inicia a goroutine
fmt.Println("Olá do main")
time.Sleep(time.Second) // dá tempo para a goroutine terminar
}
É importante lembrar que as goroutines são muito leves em comparação com os threads do sistema operacional, e seu agendamento e troca de contexto são gerenciados pelo runtime do Go, permitindo uso eficiente dos recursos.