Trabalho de conclusão de graduação
Um estudo sobre os mecanismos de concorrência da linguagem Go
Autor
Soares, João Luis da Silva Guio
Institución
Resumen
Este estudo explora a linguagem Go e seus mecanismos para programação concorrente. Apresenta-se uma visão geral da linguagem, destacando os recursos de concorrência oferecidos por ela. Soluções de problemas clássicos de concorrência e de padrões de computação distribuída são propostos e analisados, mostrando o uso dos diversos recursos providos por Go. As soluções apresentadas demonstram a simplificação de código por meio das abstrações oferecidas pela linguagem e pelo modelo de concorrência baseado em trocas de mensagens via canais de comunicação. Avalia-se também a possibilidade e dificuldades de estender a linguagem para oferecer uma implementação generalizada de corrotinas, usando como referência uma implementação na linguagem Lua. Por fim, apresentamos uma análise simplificada do desempenho do Go, comparando os tempos de execução de um algoritmo de multiplicação de matrizes entre duas soluções: uma desenvolvida em Go, e outra em C++. A linguagem C++ obteve desempenho superior a Go.