首页
AI Coding
NEW
沸点
课程
直播
活动
AI刷题
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
会员
登录
注册
由点到线,由线到面,构建Java虚拟机知识体系
菜菜的后端私房菜
创建于2022-11-22
订阅专栏
由点到线,由线到面,构建Java虚拟机相关知识体系
等 55 人订阅
共20篇文章
创建于2022-11-22
订阅专栏
默认顺序
默认顺序
最早发布
最新发布
容易发生内存泄漏的八个场景,你都知道吗?
JVM在运行时会存在大量的对象,一部分对象是长久使用的,一部分对象只会短暂使用。JVM会通过可达性分析算法和一些条件判断对象是否再使用,当对象不再使用时,通过GC将这些对象进行回收,避免资源被用尽
JVM参数太多?一网打尽常用JVM参数!
JVM提供的参数多且各种类型的参数能够提供不同的功能,理解JVM运行原理和熟悉常用JVM参数能够帮助我们更好的进行调优
深入浅出JVM(十八)之并发垃圾收集器G1
G1使用Region存储对象,在期望低延迟的时间中进行价值最大的回收,使用原始快照解决并发标记产生的对象消失问题,不会产生内存碎片,适用于内存大、处理器数多、低延迟的场景
深入浅出JVM(十七)之并发垃圾收集器CMS
CMS在遍历引用链、清理时并发执行,能够使用户线程的停顿时间变短;但是带来吞吐量的降低,并且增量更新会导致浮动垃圾的出现,在某些场景下反而使会使用Serial Old导致延迟更高
深入浅出JVM(十六)之三色标记法与并发可达性分析
本篇文章围绕并发的可达性分析深入浅出的解析三色标记法、并发可达性分析可能出现的浮动垃圾,对象丢失问题以及解决对象丢失问题的增量更新、原始快照两种方式
深入浅出JVM(十五)之垃圾收集器(上篇)
本篇文章作为垃圾收集器系列文章的上篇,主要介绍从各个方面对垃圾收集器的分类、GC性能指标、串行垃圾收集器、并行垃圾收集器等
深入浅出JVM(十四)之内存溢出、泄漏与引用
本篇文章将深入浅出的介绍Java中的内存溢出与内存泄漏并说明强引用、软引用、弱引用、虚引用的特点与使用场景
深入浅出JVM(十三)之垃圾回收算法细节
为了能够更加充分的理解后续的垃圾收集器,本篇文章将深入浅出解析垃圾回收算法的相关细节,如:STW、枚举根节点如何避免长时间STW、安全点与安全区、跨代引用引起的GC Root扫描范围增大等问题
深入浅出JVM(十二)之垃圾回收算法
本篇文章围绕垃圾回收算法,深入浅出解析垃圾回收分类、标记清除、复制、标记整理、分代收集、增量收集、分区算法等多种算法
深入浅出JVM(十一)之如何判断对象“已死”
当JVM(Java虚拟机)判断对象不再使用时,就会将其回收,避免占用资源,本篇文章将围绕判断对象是否再使用,深入浅出的解析引用计数法、可达性分析算法以及JVM如何判断对象是真正的“死亡”(不再使用)
深入浅出JVM(十)之字节码指令(下篇)
本篇文章作为字节码的指令的下篇,深入浅出的解析各种类型字节码指令,如:方法调用与返回、控制转义、异常处理、同步等
深入浅出JVM(九)之字节码指令(上篇)
由于字节码指令种类多篇幅长,将会分为上、中、下、三篇来深入浅出解析字节码指令,本篇作为上篇深入浅出的解析字节码指令介绍、加载存储指令、算术指令和类型转换指令
深入浅出JVM(八)之类加载器
本篇文章围绕类加载器深入浅出的解析类加载器的分类与种类、双亲委派模型、通过源码解析证实我们的观点、最后还自定义的类加载器和说明热替换
深入浅出JVM(七)之执行引擎的解释执行与编译执行
本篇文章围绕执行引擎,深入浅出的解析执行引擎中解释器与编译器的解释执行和编译执行、执行引擎的执行方式、逃逸分析带来的栈上分配、锁消除、标量替换等优化以及即时编译器编译对热点代码的探测
深入浅出JVM(六)之前端编译过程与语法糖原理
本篇文章以Java中编译器的分类为开篇,深入浅出的解析前端编译的流程,Java中泛型、增强for循环、可变长参数、自动拆装箱、条件编译以及Lambda等语法糖的原理
深入浅出JVM(五)之Java中方法调用
本篇文章围绕Java方法的调用,深入浅出的解析非虚方法与虚方法、调用的字节码指令、解析调用和分派调用、单分派以及多分派
深入浅出JVM(四)之类文件结构
Java文件编译成字节码文件后,通过类加载机制到Java虚拟机中,Java虚拟机能够执行所有符合要求的字节码,因此无论什么语言,只要能够编译成符合要求的字节码文件就能够被Java虚拟机执行
深入浅出JVM(三)之HotSpot虚拟机类加载机制
本篇文章围绕类加载阶段流程的 加载---验证---准备---解析---初始化---卸载 详细展开每个阶段的细节
深入浅出JVM(二)之运行时数据区和内存溢出异常
Java虚拟机在运行Java程序时,把所管理的内存叫做运行时数据区,这些运行时数据区还可能发生内存溢出异常,本文将深入浅出介绍运行时数据区以及可能发生的内存溢出异常
深入浅出JVM(一)之Hotspot虚拟机中的对象
本篇文章主要从对象的创建流程(类加载、分配内存、初始化零值、设置对象头、执行实例方法)、对象的内存布局(对象头、实例数据、对齐填充)、访问对象的定位方式(直接指针访问、句柄访问)等层面详细介绍对象