随笔分类 - JVM
摘要:图中展示了7种作用于不同分代的收集器,如果两个收集器之间存在连线,则说明它们可以搭配使用。虚拟机所处的区域则表示它是属于新生代还是老年代收集器。 新生代收集器:Serial、ParNew、Parallel Scavenge 老年代收集器:CMS、Serial Old、 Parallel Old 整堆
阅读全文
摘要:如何判断Java对象是否已死? 引用计数法、可达性算法。 引用计数法? 1. 描述 每个对象有一个引用计数器,当对象被引用一次则计数器加1,当对象引用失效一次则计数器减1,对于计数器为0的对象意味着是垃圾对象,可以被GC回收。 2. 优点 判断方式简单。 算法效率高。 3. 缺点 循环引用。 可达性
阅读全文
摘要:JVM(HotSpot)整体架构 JVM整体由四部分构成: ClassLoader Runtime Data Area 运行时数据区 执行引擎子系统 Native interface本地库接口 JVM内存结构 方法区:存储类信息、常量、静态变量等信息。 堆:存储对象实例和数组。 栈:(Java方法执
阅读全文
摘要:栈帧(Stack Frame) 栈帧是Java虚拟栈中的单位元素。 栈帧存储了局部信息表、操作数栈、动态链接、方法返回地址、附加信息。 一个线程调用一个方法就会创建一个栈帧。(所以调用的越多,栈帧创建的越多,例如递归。当栈帧超过虚拟栈最大内存时,会抛出StackOverFlowError) 在Run
阅读全文

浙公网安备 33010602011771号