JVM
JVM
爱哭的毛毛虫好汉歌
这个作者很懒,什么都没留下…
展开
-
JVM4:类加载器解析
1. 类加载阶段1.1 加载klass每个Java对象的对象头里,_klass 字段会指向一个VM内部用来记录类的元数据用的 InstanceKlass 对象;InsanceKlass 里有个 _java_mirror 字段,指向该类所对应的Java镜像——java.lang.Class实例。HotSpot VM 会给 Class 对象注入一个隐藏字段 “klass”,用于指回到其对应的 InstanceKlass 对象。这样,klass 与 mirror 之间就有双向引用,可以来回导航。这个模型里原创 2020-05-10 19:05:01 · 515 阅读 · 0 评论 -
JVM系列3:垃圾回收
垃圾回收如何判断对象可以回收垃圾回收算法分代垃圾回收垃圾回收器垃圾回收调优1. 如何判断对象可以回收1.1 引用计数法1.2 可达性分析算法Java 虚拟机中的垃圾回收器采用可达性分析来探索所有存活的对象扫描堆中的对象,看是否能够沿着 GC Root对象 为起点的引用链找到该对象,找不到,表示可以回收哪些对象可以作为 GC Root ?1.3 四种引用的定义引用...原创 2020-05-03 09:58:13 · 305 阅读 · 0 评论 -
JVM系列2:内存结构
内存结构程序计数器虚拟机栈本地方法栈堆方法区直接内存1. 程序计数器1.1 定义Program Counter Register 程序计数器(寄存器)作用,是记住下一条jvm指令的执行地址特点是线程私有的不会存在内存溢出1.2 作用 //jvm指令0: getstatic #20 // PrintStream ...原创 2020-04-26 17:27:21 · 208 阅读 · 0 评论 -
JVM系列1:JVM简要介绍
1.什么是JVMJVM是Java Virtual Machine(Java虚拟机)的缩写,JVM是一种用于计算设备的规范,它是一个虚构出来的计算机,是通过在实际的计算机上仿真模拟各种计算机功能来实现的。引入Java语言虚拟机后,Java语言在不同平台上运行时不需要重新编译。Java语言使用Java虚拟机屏蔽了与具体平台相关的信息,使得Java语言编译程序只需生成在Java虚拟机上运行的目标代码...原创 2020-04-25 18:20:00 · 164 阅读 · 0 评论