Identificando Fugas de Memória

Uma fuga de memória é um erro na lógica de alocação do armazenamento dinâmico de um programa que faz com que deixe de recuperar a memória descartada. Ou seja, os objetos que não são mais solicitados não são recuperados. Inesperadamente, grandes números de tais instâncias podem sugerir uma fuga de memória. Uma fuga de memória, se severa, pode levar seu aplicativo ao colapso em decorrência da falta de memória.

Fugas de memória são causadas por objetos que continuam contendo referências a outros objetos, impedindo assim que a coleta de lixo recupere os objetos retidos.   A tabela Object References pode ser utilizada para ajudar a identificar tais referências.

Execute as seguintes etapas:

  1. Selecione o monitor ou o agente na exibição Profiling Monitor. 
  2. Execute a ação Collect Object References no agente ativo.
  3. Dê um clique com o botão direito do mouse e selecione Open With > Object Reference.   A tabela Object References é aberta.
  4. No menu local  um botão com um ícone triângulo selecione Show Reference To.
  5. Examine a lista de objetos e o número de referências a eles.  Aqueles que possuem referências são um potencial problema de fuga de memória. 

 

Conceitos Relacionados
Visão Geral da Ferramenta de Definição de Perfis
Recursos de Definição de Perfil
Tabela Object References

Tarefas Relacionadas
Localizando uma Fuga de Memória em uma Operação Orientada à Transações
Definindo o Perfil de um Aplicativo
Iniciando ou Anexando um Processo Java
Analisando Desempenho e Uso de Memória - Visão Geral

 

 
 

>