estaba pensando en la detección de fugas de memoria automática para un programa Java. El algoritmo básico es crear JUnits que contienen la siguiente lógica:automatizado de detección de fugas de memoria en Java
Call System.gc() several times
Determine initial heap memory consumption using either Runtime class or JMX
Loop
Do something that exercises program under test
End loop
Call System.gc() several times
Determine final heap memory consumption
Compare initial and final memory numbers
El bucle está siendo utilizado para ver si la memoria está subiendo en pequeños incrementos.
Es necesario distinguir entre los aumentos esperados e inesperados en el uso de la memoria.
Esto no es realmente una prueba de unidad. Pero el marco JUnit es conveniente de usar.
¿Cree que este enfoque es válido? ¿Cree que este enfoque será exitoso para identificar fugas de memoria? ¿Alguna vez has hecho algo como esto?
una vez estaba pensando en una prueba de este tipo también, pero no pude encontrar una buena solution..hopefully uno va a venir aquí. – mort