摘要: http://www.mianwww.com/html/2012/11/17094.html Java 中,内存泄漏就是存在一些被分配的对象,这些对象有下面两个特点,首先,这些对象是可达的,即在有向图中,存在通路可以与其相连;其次,这些对象是无用的,即程序以后不会再使用这些对象。如果对象满足这两个条 阅读全文
posted @ 2015-01-02 18:10 lihui1625 阅读(828) 评论(0) 推荐(0) 编辑
摘要: 一、Java内存泄露例子 在这个例子中,代码栈中存在Vector 对象的引用 v 和 Object 对象的引用 obj 。在 For 循环中,我们不断的生成新的对象,然后将其添加到 Vector 对象中,之后将 obj 引用置空。问题是当 obj 引用被置空后,如果发生 GC ,我们创建的 Obje 阅读全文
posted @ 2015-01-02 17:45 lihui1625 阅读(669) 评论(0) 推荐(0) 编辑
摘要: 1、检测内存泄露的理论 对象的年龄:每次垃圾收集器运行时,一个对象或者是活下来或者是被回收,如果活下来,则其年龄加1. 对象的代的个数:即不同对象的年龄数。若堆上的对象的年龄分别为1,3,5, 则其由个不同的年龄,其代数为3. 正常程序的代的个数:正常程序中代的个数会稳定下来,因为应用程序的持久对象 阅读全文
posted @ 2015-01-02 14:53 lihui1625 阅读(185) 评论(0) 推荐(0) 编辑
摘要: 一、Linux 命令行 top sar vmstat iostat pidstat 二、JDK命令行 jps -l -m -v jstat jinfo jmap jhat jstat -l jstatd hprof 三、JConsole 四、Visual VM 线程Dump 分析,内存 Dump分析 阅读全文
posted @ 2015-01-02 14:17 lihui1625 阅读(104) 评论(0) 推荐(0) 编辑