摘要: 垃圾收集器 HotSpot VM 1.6的垃圾收集器。如果两个收集器之间存在连线,就说明它们可以搭配使用。 Serial 收集器 这个收集器是一个单线程的收集器,“单线程”的意义并不仅仅是说明它只会使用一个CPU或一条收集线程去完成垃圾收集工作,更重要的是在它进行垃坡收集时,必须暂停其他... 阅读全文
posted @ 2015-09-22 23:25 Joey_Tai 阅读(252) 评论(0) 推荐(0) 编辑
摘要: 标记 清除算法 首先标记出所有需要回收的对象,标记完成后统一回收掉所有被标记的对象。标记过程: 如果对象在进行根搜索后发现没有与GC Roots相连接的引用链,那它将会被第一次标记。 这是最基础的算法。 缺点: 效率问题,标记和清除过程的效率不高。 空间问题,标记清除之后会产生大量不连... 阅读全文
posted @ 2015-09-22 21:06 Joey_Tai 阅读(171) 评论(0) 推荐(0) 编辑
摘要: 强引用 强引用就是指程序代码之中普遍存在的,类似“ Object obj = new Object()”这类的引用,只要强引用还存在 圾收集器永远不会回收掉被引用的对象。 软引用 软引用用来描述一些还有用,但非必需的对象。对于软引用关联着的对象,在系统将要发生内存溢出异常之前,将会把这些对象列... 阅读全文
posted @ 2015-09-22 20:12 Joey_Tai 阅读(140) 评论(0) 推荐(0) 编辑
摘要: 引用计数算法 给对象中添加一个引用计数器,每当有一个地方引用它时,计数器值就加1,引用失效时,计数器值就减1:任何时刻计数器都为0的对象就是不可能再被使用的。Java中没有选用引用计数算越来管理内存,其中最主要的原因是它很难解决对象之间的相互循环引用的问题。 public class Re... 阅读全文
posted @ 2015-09-22 17:52 Joey_Tai 阅读(160) 评论(0) 推荐(0) 编辑
摘要: Java虚拟机在执行Java程序时会把它所管理的内存划分为若干个不同的数据区域。 程序计数器 程序计数器( Program Counter Register ) 是一块较小的内存空间,它的作用可以看做是当前线程所执行的字节码的行号指示器。字节码解释器工作时就是通过改变这个计数器的值来选取下一... 阅读全文
posted @ 2015-09-22 16:57 Joey_Tai 阅读(790) 评论(0) 推荐(0) 编辑