随笔分类 - JVM
摘要:垃圾回收算法的好坏直接影响到程序运行效率,接下来对几种常见的回收算法进行介绍。 标记 清除算法(Mark Sweep) 该算法是最基础的收集算法,算法分“标记”和“清除”两部分。 回收过程是标记出需要所有需要回收的对象,在标记完成后统一回收被标记的对象 不足 1. 标记和清除两个过程效率并不高。 2
阅读全文
摘要:在jvm中如何判断对象是生存还是死亡? 如何判断对象已死? 引用计数法: 给对象添加一个引用计数器,每当有地方引用时则加一,失效时减一,任何时刻计数器为零的对象是不可能再被使用的, 优点:引用计数法的实现简单判定效率高 缺点:难以解决对象间的相互循环引用问题 可达性分析算法: 通过一系列称为‘GC
阅读全文
摘要:以Hotspot虚拟机为例,描述对象的 创建过程。 对象的创建 通过new关键字创建对象 1. 虚拟机在遇到new关键字后先去常量池中寻找一个类的符号引用, 2. 检查这个类是否被加载,解析和初始化,如果没有则执行类加载过程 3. 为对象分配内存 在类加载过程完成后类就已经确定了对象所需要的大小,然
阅读全文
摘要:运行时数据区 java虚拟机在执行java程序的时候会将内存划分为如下几个区域,有的区域是线程共享的,但有的是区域则是线程隔离。 程序计数器(Promgram Counter Register) 程序计数器是一块较小的内存空间 字节码解释器工作时通过改变计数器的值来选取下一条字节码指令,程序分治,循
阅读全文

浙公网安备 33010602011771号