首页
AI Coding
NEW
沸点
课程
直播
活动
AI刷题
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
会员
登录
注册
JVM
ZCheng
创建于2021-07-21
订阅专栏
JVM框架 包含Class加载、运行时数据结构、内存模型、执行引擎、垃圾回收器等
等 4 人订阅
共12篇文章
创建于2021-07-21
订阅专栏
默认顺序
默认顺序
最早发布
最新发布
JVM 文章整体目录
基本架构图 Class加载流程介绍 运行时数据区介绍 线程内存模型介绍 Class文件解析 Class构成 待完善 编译到执行 待完善 GC篇 GC基础概念 GC常见算法 三色标记 STW介绍 对象创
JVM - Garbage-First(G1)
Garbage-First G1是针对大内存服务器设计的一款垃圾回收器,以高概率满足垃圾回收暂停时间目标(STW预期时间)且同时实现高吞吐量。 在G1出来之前,垃圾回收器是区分老年代垃圾回收器和新生代
JVM- CardTable
CardTable 什么是CardTable CardTable就是一个数组,通过堆除以512字节大小计算出CardTable的长度,CaedTable中每一个索引理解为一个CardPage,也就是C
关于STW与SafePoint
什么是STW? STW(stop-the-world)英文直译就是停止全世界,前面笔者有说过垃圾回收器必然会产生 在垃圾回收器通过GCRoots查找对应有用的对象的时候 ,如果不停止其他工作线程 可能
Java 对象创建过程
字节码分析创建过程 简单实现一个创建对象的代码 从字节码分析对象创建的过程 new new指令相当于去对应的内存空间申请一块内存大小 用于存放对象数据 对象的大小是可以确定的 比如int占用4个字节
JVM 并行垃圾回收器-PS PO
Parallel Scavenge Paraller Old JVM PS+PO调优 吞吐量 吞吐量的计算方式是 程序执行时间 /(程序执行时间+GC执行时间) 响应时间 响应时间的方式就是 GC线
JVM - 并发垃圾回收器-CMS
CMS Concurrent Mark Sweep promotion failed Concurrent mode failure 内存碎片 浮动垃圾
JVM - 三色标记算法
三色标记 三色标记 Incremental Update write barrier STAB(Snapshot-at-beginning) 三色标记过程 白 假设内存初始状态如下图,在标记前 白色为
JVM - GC定位及清除算法
垃圾定位算法 Refrence Count Refrence Count 引用计数 使用引用计数的缺点就是 A,B,C循环引用 都是1 就无法确定是否为垃圾对象了 缺点显而易见 就是无法解决循环依赖
JVM - JMM 内存模型及volatile
硬件层 缓存锁: 但是有些无法被缓存的数据或者跨域多个缓存行的数据 依旧需要使用总线锁 缓存行 cpu读取缓存的时候以缓存行CacheLine为基本单位,目前大部分实现为64个字节 MESI 标记的数
JVM - 类加载器
JVM 之类加载 java从编码到执行 javac 编译 java ClassLoader 加载类 Class 字节码解释器 、JIT即时编译器 执行引擎 什么是Class Class文件是一堆
JVM - 运行时数据区
Java运行时数据区 程序计数器 方法区 堆 栈 栈帧 TLAB 逃逸分析 动态连接 VTable 虚方法 非虚方法 堆外内存直接内存 常量池 本地方法栈 最全面讲解