敏捷是一条很长的路,摸索着前进着
最近一段时间,在公司里对java内存泄露的问题进行了调查。
问题的发现:
系统中在连续不停地、反复进行一个操作(先打开A,然后切替到画面B,点击画面履历再回到A,如此反复)。经过长时间的测试,经常会20小时,JVM的内存使用量增长30M以上。
问题的分析:
首先根据操作,找到会执行的代码,对代码进行分析。
Java会产生内存泄露的原因,经过本次调查,
虽然写java程序,有GC帮助我们管理内存,但好的编程习惯还是需要的,可以避免不必要的麻烦。
最后,记述一下我记录内存的方法。
由于对代码做好修改之后,要确认一下内存是否有明显增长。
于是写一段代码,每个5分钟对对内存进行一次记录,在连续运行20小时候,做成曲线图,以便分析。
(以下是为了方便,重新写的,原来项目中用到的,有一整套完备的定时器生成和起动的管理类,这里没有写出来。)
Powered by: BlogJava Copyright © 李 明