BT

Disseminando conhecimento e inovação em desenvolvimento de software corporativo.

Contribuir

Tópicos

Escolha a região

Início Notícias Go avança a todo o vapor: versão 1.2 é liberada

Go avança a todo o vapor: versão 1.2 é liberada

Favoritos

Acaba de ser lançada a versão 1.2 da linguagem de programação open source Go que trás uma série de revisões na linguagem, melhoria nas ferramentas e mudanças em sua biblioteca padrão. Go surgiu como um projeto de pesquisa do Google, mas hoje é usado em diversos projetos e ambientes de produção. Esta nova versão mantém o ritmo acelerado de desenvolvimento da linguagem, cuja última versão - 1.1 - foi lançada sete meses atrás em maio.

Tal como anunciado previamente, para a versão 1.2 há duas grandes mudanças na linguagem que afetarão tanto nil quanto slices. Com relação ao nil, é garantido que um novo runtime panic irá ocorrer em certas condições, comparado com o comportamento anterior da linguagem que podia permitir o acesso inseguro a áreas da memória. Com relação aos slices, agora a sua capacidade pode ser pré definida, assim como seu tamanho. Os programadores não precisarão modificar o código fonte existente devido a esta mudança, porém a alteração de comportamento do nil significa que a partir da versão 1.2 da linguagem, esta poderá tornar explícitos erros em código fonte que até então podiam estar ocultos e que precisarão ser manualmente corrigidos.

O escalonador (scheduler) para as goroutines recebeu capacidade de preempção, como uma tentativa de mitigar situações na qual uma goroutine pode causar a inanição de outras goroutines em execução dentro de uma mesma thread. Individualmente, o tamanho mínimo de memória stack para uma goroutine foi aumentado para 8 Kb e o tamanho máximo agora é configurável. O valor default para o tamanho máximo do stack em um sistema operacional de 64 bits é de 1GB e 250MB em sistemas operacionais de 32 bits.

Usuários do Go nas plataformas Windows e BSD ficarão felizes ao perceberem que a melhoria de performance de rede que usuários Linux e Mac OS X receberam com o Go 1.1 agora fazem parte do release 1.2. De acordo com a equipe de desenvolvimento, estas mudanças trarão algo em torno de 30% de melhora de desempenho. Todos os usuários da versão 1.2 deverão ver melhorias de desempenho com a implementação do bzip2 na linguagem para a descompactação e codificação de conteúdo JSON.

Para ver a lista completa de modificações, consulte as notas do lançamento da versão 1.2.

Avalie esse artigo

Relevância
Estilo/Redação

Conteúdo educacional

BT