jvm
jwt_
这个作者很懒,什么都没留下…
展开
-
判断对象是否死亡
引用计数算法 给对象添加一个引用计数器,当有一个地方引用时,计数器+1;引用失效时,计数器-1;任何时刻计数器为0的对象就是不可能在被使用的。 引用计数算法判断对象是否存活,但是很难解决对象之间相互循环引用的问题。 举例: public class ReferenceCountingGC { public Object instance= null; private static ...原创 2019-02-22 22:29:28 · 282 阅读 · 0 评论 -
深入理解jvm-java内存区域、内存溢出异常、对象访问
运行时数据区域 在运行java程序时把它所管理的内存分为若干的数据区域,包括方法区、虚拟机栈、本地方法栈、堆、程序计数器。 程序计数器 相当于当前线程所执行的字节码的行号指示器,通过改变计数器的值来执行对应的字节码指令。 如果正在执行一个java方法,计数器记录的是虚拟机字节码指令的地址,如果是native方法,计数器为空。 在多线程中,任何一个确定的时刻,一个处理器只执行一条线程中的指令,因此...原创 2019-02-19 14:31:44 · 303 阅读 · 0 评论 -
垃圾收集算法与垃圾收集器
垃圾收集算法 标记-清除算法 首先标记所有需要回收的对象,在标记完成后统一回收所有被标记的对象。 缺点: 效率问题,效率不高; 空间问题,标记清除后产生大量不连续的内存碎片,以后运行过程中分配较大对象时,无法找到足够的连续空间导致提前触发另一次回收。 执行过程: 复制算法 将内存根据容量分为大小相等的两份,首先使用其中一份,当第一份用完时,将第一份中可用对象全部复制到第二份中,并将第一份剩余...原创 2019-03-03 14:51:20 · 187 阅读 · 0 评论