BT

Google abre código do Leak Finder, para detecção de vazamentos de memória em JavaScript

por Abel Avram , traduzido por Robison Tesini em 14 Ago 2012 |

O Google abriu o código do Leak Finder, uma ferramenta para examinar a memória de aplicações em JavaScript para encontrar vazamentos de memória. Como em outras linguagens com memória gerenciada, o JavaScript não possui os vazamentos de memória típicos encontrados em outras linguagens como C++; mas quando a memória permanece alocada para objetos que não estão mais sendo utilizados, considera-se que a aplicação apresenta vazamentos, que são capazes de comprometer o desempenho e gerar falhas de execução.

Uma possível maneira de gerar um vazamento de memória em JavaScript é através de uma referência circular, especialmente quando closures são utilizados. O Leak Finder consegue detectar quando uma closure produz um vazamento, alertando o desenvolvedor para o código com problemas. A ferramenta tenta encontrar Google Closures (objetos do tipo goog.Disposable) no heap, verificando se o método dispose() foi chamado e se os listeners do evento foram liberados, pois estes últimos podem manter referências a objetos DOM.

Atualmente, o Leak Finder trabalha com a biblioteca Closures, mas pode ser configurado para integração com outras bibliotecas. Closures é uma biblioteca de código aberto feita em JavaScript que contém ferramentas de tratamento de eventos, manipulação de DOM, testes de unidade, funcionalidades de animação e outros componentes. É muito utilizada por serviços do Google como o GMail, GDocs, GMaps e outros.

Além do Leak Finder, o Google já abriu o código de várias ferramentas de JavaScript, como Closure Compiler, para geração de código compacto e com alta performance; Closure Templates, para geração dinâmica de HTML, Closure Linter, ferramenta de checagem de estilo para JavaScript e a Closure Stylesheets, uma série de extensões para CSS.

Avalie esse artigo

Relevância
Estilo/Redação

Olá visitante

Você precisa cadastrar-se no InfoQ Brasil ou para enviar comentários. Há muitas vantagens em se cadastrar.

Obtenha o máximo da experiência do InfoQ Brasil.

Dê sua opinião

HTML é permitido: a,b,br,blockquote,i,li,pre,u,ul,p

Receber mensagens dessa discussão
Comentários da comunidade

HTML é permitido: a,b,br,blockquote,i,li,pre,u,ul,p

Receber mensagens dessa discussão

HTML é permitido: a,b,br,blockquote,i,li,pre,u,ul,p

Receber mensagens dessa discussão

Dê sua opinião
Feedback geral
Bugs
Publicidade
Editorial
Marketing
InfoQ Brasil e todo o seu conteúdo: todos os direitos reservados. © 2006-2016 C4Media Inc.
Política de privacidade
BT

We notice you’re using an ad blocker

We understand why you use ad blockers. However to keep InfoQ free we need your support. InfoQ will not provide your data to third parties without individual opt-in consent. We only work with advertisers relevant to our readers. Please consider whitelisting us.