![](https://img-blog.csdnimg.cn/20201014180756780.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
深入理解JVM
Serendipity°
在校学渣一枚
展开
-
第2章-Java内存区域与内存溢出异常
文章目录2.2运行时数据区域2.2.1 程序计数器(各线程私有)2.2.2 Java虚拟机栈(各线程私有)2.2.3 本地方法栈(各线程私有)2.2.4 Java堆(各线程共享)2.2.5 方法区(各线程共享)2.2.6 运行时常量池(方法区一部分)2.2.7 直接内存2.3 HotSpot 虚拟机对象探秘2.3.1 对象的创建2.3.2 对象的内存布局2.3.3 对象的访问定位2.2运行时数据...原创 2019-03-26 10:00:55 · 187 阅读 · 0 评论 -
第13章-线程安全与锁优化
文章目录13.2 线程安全13.2.1 Java 语言中的线程安全13.2.1.1 不可变13.2.1.2 绝对线程安全13.2.1.3 相对线程安全13.2.1.4 线程兼容13.2.1.5 线程对立13.2.2 线程安全的实现方法13.2.2.1 互斥同步13.2.2.2 非阻塞同步13.2.2.3 无同步方案13.3 锁优化13.3.1 自旋锁与自适应自旋13.3.2 锁消除13.3.3 锁...原创 2019-03-27 12:58:58 · 137 阅读 · 0 评论 -
第12章-Java内存模型与线程
文章目录12.1 概述12.2 硬件的效率与一致性12.3 Java内存模型12.3.1 主内存与工作内存12.3.2 内存间交互操作12.3.3 对于 volatile 型变量的特殊规则12.3.3.1 可见性12.3.3.2 禁重排12.3.3.3 具体实现方式12.3.3.4 volatile变量的特殊规则12.3.4 对于long和double 型变量的特殊规则12.3.5 原子性、可见性...原创 2019-03-27 12:57:48 · 177 阅读 · 0 评论 -
第11章-晚期(运行期)优化
文章目录11.1 概述11.2 HotSpot虚拟机内的即时编译器11.2.1 解释器与编译器11.2.2 编译对象与触发条件11.2.2.1 方法调用计数器11.2.2.2 回边计数器11.2.3 编译过程11.3 编译优化技术11.3.1 优化技术概览11.3.2 公共子表达式消除11.3.3 数组边界检查消除11.3.4 方法内联11.3.5 逃逸分析11.4 Java 与 C/C++ 的编...原创 2019-03-27 12:56:48 · 144 阅读 · 0 评论 -
第10章-早期(编译期)优化
文章目录10.2 Javac 编译器10.2.1 编译过程10.2.2 解析与填充符号表10.2.2.1 词法、语法分析10.2.2.2 填充符号表10.2.3 注解处理器10.2.4 语义分析与字节码生成10.2.4.1 标注检查10.2.4.2 数据及控制流分析10.2.4.3 解语法糖10.2.4.4 字节码生成10.3 Java语法糖的味道10.3.1 泛型与类型擦除10.3.2 自动装箱...原创 2019-03-27 12:54:50 · 231 阅读 · 0 评论 -
第8章-虚拟机字节码执行引擎
文章目录8.1 概述8.2 运行时栈帧结构8.2.0 概述8.2.1 局部变量表8.2.2 操作数栈8.2.3 动态连接8.2.4 方法返回地址8.3 方法调用8.3.1 解析8.3.2 分派8.3.2.1 静态分派8.3.2.2 动态分派8.3.2.3 单分派与多分派8.3.2.4 虚拟机动态分派的实现8.4 基于栈的字节码解释执行引擎8.4.1 解释执行8.4.2 基于栈的指令集与基于寄存器的...原创 2019-03-27 12:53:53 · 137 阅读 · 0 评论 -
第7章-虚拟机类加载机制
文章目录7.1 概述7.2 类加载的时机7.2.1 生命周期7.2.2 加载时间点7.3 类加载的过程7.3.1 加载7.3.2 验证7.3.2.1 文件格式验证7.3.2.2 元数据验证7.3.2.3 字节码验证7.3.2.4 符号引用验证7.3.3 准备7.3.4 解析7.3.4.1 类或接口的解析7.3.4.2 字段解析7.3.4.3 类方法解析7.3.4.4 接口方法解析7.3.5 初始化...原创 2019-03-26 10:02:53 · 236 阅读 · 0 评论 -
第6章-类文件结构
文章目录6.2 无关性的基石6.3 Class类文件的结构6.3.0 概述6.3.1 魔数与Class文件的版本6.3.2 常量池6.3.2.1 CONSTANT_Class_info 型常量的结构6.3.2.2 CONSTANT_Utf8_info 型常量的结构6.3.2.3 常量池中的14种常量项的结构总表6.3.2.4 实例分析(6.3.1~6.3.2)6.3.3 访问标志6.3.4 类索引...原创 2019-03-26 10:02:32 · 423 阅读 · 0 评论 -
第3章-垃圾收集器与内存分配策略
文章目录3.1 概述3.2 对象已死吗3.2.1 引用计数算法3.2.2 可达性分析算法3.2.3 再谈引用3.2.4 生存还是死亡3.2.5 回收方法区3.3 垃圾收集算法3.3.1 标记-清除算法(Mark-Sweep)3.3.2 复制算法(Copying)3.3.3 标记-整理算法(Mark-Compact)3.3.4 分代收集算法(Generational Collection)3.4 H...原创 2019-03-26 10:01:46 · 255 阅读 · 0 评论 -
JDK和JRE
原创 2019-04-30 10:42:16 · 140 阅读 · 0 评论