JVM
clchenLOu
爬天梯
展开
-
06 类加载机制
06 类加载机制类加载过程类加载器双亲委派类加载过程过程:加载:在内存中生成一个代表这个类的 java.lang.Class 对象,作为方法区这个类的各种数据的入口注意这里不一定非得要从一个 Class 文件获取这里既可以从 ZIP 包中读取(比如从 jar 包和 war 包中读取)也可以在运行时计算生成(动态代理),也可以由其它文件生成(比如将 JSP 文件转换...原创 2020-02-27 20:50:10 · 86 阅读 · 0 评论 -
05 GC垃圾收集器
05 GC垃圾收集器5.1 Serial 垃圾收集器 (单线程、 复制算法)5.2 ParNew 垃圾收集器 (Serial+ 多线程)5.3 Parallel Scavenge 收集器 (多线程复制算法、高效)5.4 Serial Old 收集器 (单线程标记整理算法 MSC)5.5 Parallel Old 收集器 (多线程标记整理算法)5.6 CMS 收集器 (...原创 2020-02-21 23:03:21 · 166 阅读 · 0 评论 -
04 GC分代收集算法 和 分区收集算法
04 GC分代收集算法 和 分区收集算法4.1 分代收集算法4.2 分区收集算法4.1 分代收集算法在新生代-复制算法每次垃圾收集都能发现大批对象已死, 只有少量存活. 因此选用复制算法, 只需要付出少量存活对象的复制成本就可以完成收集.在老年代-标记整理算法因为对象存活率高、没有额外空间对它进行分配担保, 就必须采用“标记—清理”或“标记—整理”算法来进行回收, 不必进行内...原创 2020-02-21 23:00:39 · 647 阅读 · 0 评论 -
03 四种引用类型
03 四种引用类型强引用:把一个对象赋给一个引用变量,这个引用变量就是一个强引用。当一个对象被强引用变量引用时,它处于可达状态,它是不可能被垃圾回收机制回收的,即使该对象以后永远都不会被用到 JVM 也不会回收。因此强引用是造成 Java 内存泄漏的主要原因之一软引用:软引用需要用 SoftReference 类来实现,对于只有软引用的对象来说,当系统内存足够时它不会被回收,当系统内存空间不...原创 2020-02-21 23:00:06 · 120 阅读 · 0 评论 -
02 垃圾回收算法
02 垃圾回收算法1 垃圾辨别1.1 引用计数法1.2 可达性分析2 标记清除算法(Mark-Sweep)3 复制算法4 标记整理算法(Mark-Compact)5 分代收集算法5.1 新生代与复制算法5.2 老年代与标记复制算法1 垃圾辨别1.1 引用计数法一个对象如果没有任何与之关联的引用,即他们的引用计数都不为 0,则说明对象不太可能再被用到,...原创 2020-02-21 22:59:30 · 452 阅读 · 4 评论 -
01 JVM基本概念与内存区域
01 JVM基本概念与内存区域1 基本概念2 内存区域程序计数器(线程私有)虚拟机栈(线程私有)本地方法区(线程私有)堆(heap线程共享)-- 运行时数据区新生代老年代方法区/永久代(线程共享)Java8与元数据1 基本概念JVM:是可运行Java代码的假想计算机 ,包括一套字节码指令集、一组寄存器、一个栈、一个垃圾回收堆和一个存储方法域运行...原创 2020-02-21 22:55:16 · 159 阅读 · 0 评论