Identificar las fugas de memoria

Las fugas de memoria son errores que se producen en la lógica de asignación dinámica de almacenamiento de un programa y que impiden al programa reclamar la memoria descartada. Es decir, no se reclaman los objetos que han dejado de necesitarse. Se supone que hay una fuga de memoria cuando se produce un número inesperadamente elevado de tales incidencias. Una fuga de memoria, si es grave, puede provocar el colapso de su aplicación debido a que se ha agotado la memoria.

Las fugas de memoria se deben a objetos que siguen reteniendo referencias a otros objetos, impidiendo así que la recogida de basura pueda reclamar los objetos retenidos. La tabla de referencias de objetos puede servir de ayuda para identificar este tipo de referencias. 

Siga estos pasos:

  1. Seleccione el supervisor o el agente en la vista Supervisor de perfilado.  
  2. Ejecute la acción Recoger referencias de objeto en el agente activo.
  3. Pulse el botón derecho del ratón y seleccione Abrir con > Referencia de objeto. Se abre la tabla de referencias de objeto. 
  4. En el menú local Botón con icono triangular, seleccione Mostrar referencia a.
  5. Examine la lista de objetos y el número de referencias que se hacen a ellos.  Los que tienen referencias representan un problema potencial de fuga de memoria. 

 

Conceptos relacionados
Visión general de la herramienta de perfilado
Recursos de perfilado
Tabla Referencias de objeto

Tareas relacionadas
Localizar una fuga de memoria en una operación orientada a transacciones
Perfilar una aplicación
Lanzar o conectar un proceso Java
Analizar el rendimiento y la utilización de la memoria - visión general

 

 
 

>