JVM
小破程序员
这个作者很懒,什么都没留下…
展开
-
JVM 垃圾回收机制
JVM体系结构概览: 垃圾回收(GC) 发生在哪个区: heap(堆)区。 GC是什么?分几种: GC:分代收集算法。 次数上频繁收集young区, Minor GC 次数上较少收集old区,Full GC J基本不动Perm(永久代)区 GC 四大算法: 引用计数法: 只要对象被引用就不进行垃圾回收,缺点是较难处理循环引用(A B 互相引用)。(已淘汰,JVM基本上不使用此方法) 复制算法:发生在年轻代 Minor GC , 优点: 效率高、没有内存碎片。 缺点...原创 2021-01-20 21:23:19 · 203 阅读 · 1 评论 -
Java 的堆、栈、方法区
堆 : 此内存区的唯一目的就是存放实例对象,几乎所有的对象实例都在这里分配内存。这一点在java虚拟机规范中的描述是:所有的对象实例以及数组都要在堆上分配。 栈 : 虚拟机栈用于存储局部变量表等。局部变量表存放了编译期可知长度的各种基本数据类型(byte,short,int,long,float,double,char,boolean)、对象引用(refrence类型,不同于对象本身,它是对象在堆内存中的首地址),方法执行完,自动释放。 方法区: 用于存储已被虚拟机加载的类信息、常量...原创 2021-01-17 09:57:48 · 87 阅读 · 0 评论 -
JVM的架构模型
Java编译器输入的指令流基本上是一种基于栈的指令集 架构,另外一种指令集架构则是基于寄存器的指令集 架构具体来说:这两种架构的区别:基于栈式架构的特点设计和实现更简单,适用于资源受限的系统统; 避开了寄存器的分配难题, 使用零地址指令分配方式。 指令流中的指令大部分是零地址指令,其执行过程依赖于操作栈。指令集更小,编译器容易实现 不需要硬件支持,可移植性更好,更好实现跨平...原创 2020-04-26 20:31:45 · 137 阅读 · 0 评论