
java虚拟机
文章平均质量分 81
向程序猿进化
这个作者很懒,什么都没留下…
展开
-
JVM内存区域划分及其作用
一、运行时数据区1、程序计数器(寄存器)当前线程所执行的字节码行号指示器字节码解释器工作依赖计数器控制完成通过执行线程行号记录,让线程轮流切换各条线程之间计数器互不影响线程私有,生命周期与线程相同,随JVM启动而生,JVM关闭而死线程执行Java方法时,记录其正在执行的虚拟机字节码指令地址线程执行Nativan方法时,计数器记录为空(Undefined)唯一在Java虚拟机规范中没有规定任何Out...原创 2018-06-21 21:34:26 · 2336 阅读 · 0 评论 -
JVM垃圾收集器与内存分配策略
判断对象是否存活在进行GC之前,首先要确定的就是在java堆中那些对象已经“死去”那些对象还“活着”引用记数法(Referencecounting)了解即可,虚拟机并不是通过该算法来判断对象是否存活。引用计数器的实现很简单,对于一个对象A,只要有任何一个对象引用了A,则A的引用计数器就加1,当引用失效时,引用计数器就减1。只要对象A的引用计数器的值为0,则对象A就不可能再被使用。存在的问题:很难处...原创 2018-06-21 21:42:12 · 176 阅读 · 0 评论 -
虚拟机类加载机制
类从被加载到虚拟机内存中开始,到卸载出内存为止,它的整个生命周期包括:加载(Loading)、验证(Verification)、准备(Preparation)、解析(Resolution)、初始化(Initialization)、使用(Using)和卸载(Unloading)7个阶段。其中准备、验证、解析3个部分统称为连接(Linking)。如图所示。加载、验证、准备、初始化和卸载这5个阶段的顺序...原创 2018-06-21 21:45:16 · 163 阅读 · 0 评论