![](https://img-blog.csdnimg.cn/20201014180756754.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
jvm学习笔记
文章平均质量分 97
jvm学习笔记
待别三日
这个作者很懒,什么都没留下…
展开
-
第十三章、 GC分类与性能指标
第十章、垃圾回收概述及算法13.1. GC分类与性能指标13.1.1. 垃圾回收器概述13.1.2. 垃圾收集器分类13.1.3. 评估GC的性能指标吞吐量暂停时间吞吐量 vs 暂停时间13.2. 不同的垃圾回收器概述13.2.1. 垃圾回收器发展史13.2.2. 7种经典的垃圾收集器13.2.3. 7款经典收集器与垃圾分代之间的关系13.2.4. 垃圾收集器的组合关系13.2.5. 不同的垃圾收集器概述13.2.6. 如何查看默认垃圾收集器13.3. Serial回收器:串行回收13.4. ParNew回原创 2021-11-22 15:30:59 · 235 阅读 · 0 评论 -
第十二章、垃圾回收相关概念
第十二章、垃圾回收相关概念12.1. System.gc()的理解12.2. 内存溢出与内存泄露内存溢出(OOM)内存泄漏(Memory Leak)12.3. Stop The World12.4. 垃圾回收的并行与并发并发(Concurrent)并行(Parallel)并发 vs 并行垃圾回收的并发与并行并行(Parallel)串行(Serial)并发(Concurrent)12.5. 安全点与安全区域安全点抢先式中断:(目前没有虚拟机采用了)主动式中断安全区域(Safe Resion)实际执行时:12.原创 2021-11-22 14:00:40 · 122 阅读 · 0 评论 -
第十一章、垃圾回收概述及算法
第十一章、垃圾回收概述及算法11、垃圾回收概述及算法11.1. 垃圾回收概述11.1.1. 什么是垃圾?11.1.2. 为什么需要GC11.1.3. 早期垃圾回收11.1.4. Java垃圾回收机制担忧GC主要关注的区域11.2. 垃圾回收相关算法11.2.1. 标记阶段:引用计数算法11.2.2. 标记阶段:可达性分析算法11.2.3. 对象的finalization机制11.2.4. MAT与JProfiler的GC Roots溯源11.2.5. 如何判断什么原因造成OOM11.2.6. 清除阶段:标原创 2021-11-17 19:21:33 · 120 阅读 · 0 评论 -
第十章、StringTable
第十章、StringTable10、StringTable10.1. String的基本特性10.1.1. String在jdk9中存储结构变更10.1.2. String的基本特性10.2. String的内存分配10.3. String的基本操作10.4. 字符串拼接操作10.5. intern()的使用10.5.1. intern的使用:JDK6 vs JDK7/810.5.2. intern的效率测试:空间角度10.6. StringTable的垃圾回收10.7. G1中的String去重操作笔原创 2021-11-15 15:04:21 · 108 阅读 · 0 评论 -
第九章、执行引擎
第九章、执行引擎9. 执行引擎9.1. 执行引擎概述9.1.1. 执行引擎的工作流程9.2. Java代码编译和执行过程9.2.1. 什么是解释器(Interpreter)?什么是JIT编译器?9.2.2. 为什么Java是半编译半解释型语言?9.3. 机器码、指令、汇编语言9.3.1. 机器码9.3.2. 指令9.3.3. 指令集9.3.4. 汇编语言9.3.5. 高级语言C、C++源程序执行过程9.3.6. 字节码9.4. 解释器9.4.1. 解释器工作机制9.4.2. 解释器分类9.4.3. 现状9.原创 2021-11-15 14:35:19 · 120 阅读 · 0 评论 -
第八章、对象实例化及直接内存
第八章、对象实例化及直接内存8、对象实例化及直接内存8.1. 对象实例化8.1.1. 创建对象的方式8.1.2. 创建对象的步骤1. 判断对象对应的类是否加载、链接、初始化2. 为对象分配内存3. 处理并发问题4. 初始化分配到的内存5. 设置对象的对象头6. 执行init方法进行初始化8.2. 对象内存布局8.2.1. 对象头8.2.2. 实例数据8.2.3. 对齐填充8.3. 对象的访问定位8.3.1. 句柄访问8.3.2. 直接指针(HotSpot采用)8.4. 直接内存(Direct Memory)原创 2021-11-15 14:12:30 · 88 阅读 · 0 评论 -
第七章、方法区
第七章、方法区7、方法区7.1. 栈、堆、方法区的交互关系7.2. 方法区的理解7.2.1. 方法区在哪里?7.2.2. 方法区的基本理解7.2.3. HotSpot中方法区的演进7.3. 设置方法区大小与OOM7.3.1. 设置方法区内存的大小7.3.2. 如何解决这些OOM7.4. 方法区的内部结构7.4.1. 方法区存储什么?7.4.2. 方法区的内部结构7.4.3. 运行时常量池 VS 常量池7.4.4. 运行时常量池7.5. 方法区使用举例7.6. 方法区的演进细节7.6.1. 为什么永久代要被元原创 2021-11-10 18:58:50 · 98 阅读 · 0 评论 -
第六章、堆
第六章、堆6、堆6.1. 堆(Heap)的核心概述6.1.1. 堆内存细分6.1.2. 堆空间内部结构(JDK7)6.1.3. 堆空间内部结构(JDK8)6.2. 设置堆内存大小与OOM6.2.1. 堆空间大小的设置6.2.2. OutOfMemory举例6.3. 年轻代与老年代6.4. 图解对象分配过程6.4.1. 概念6.4.2. 图解过程6.4.3. 思考:幸存区区满了后?6.4.4. 对象分配的特殊情况6.4.5. 总结6.5. Minor GC,MajorGC、Full GC6.5.1. 年轻代G原创 2021-11-04 14:27:36 · 77 阅读 · 0 评论 -
第五章、本地方法接口和本地方法栈
第五章、本地方法接口和本地方法栈5、本地方法接口和本地方法栈5.1. 什么是本地方法?5.2. 为什么使用Native Method?5.2. 本地方法栈笔记根据网课:尚硅谷宋红康JVM全套教程(详解java虚拟机)整理5、本地方法接口和本地方法栈5.1. 什么是本地方法? 简单地讲,一个Native Method是一个Java调用非Java代码的接囗。一个Native Method是这样一个Java方法:该方法的实现由非Java语言实现,比如C。这个特征并非Java所特有,很多其它的编程语言原创 2021-11-04 14:20:10 · 80 阅读 · 0 评论 -
第四章、虚拟机栈
第四章、虚拟机栈4、虚拟机栈4.1. 虚拟机栈概述4.1.1. 虚拟机栈出现的背景4.1.2. 初步印象4.1.3. 内存中的栈与堆4.1.4. 虚拟机栈基本内容4.1.5. 面试题:开发中遇到哪些异常?4.2. 栈的存储单位4.2.1. 栈中存储什么?4.2.2. 栈运行原理4.2.3. 栈帧的内部结构4.3. 局部变量表4.3.1. 关于Slot的理解4.3.2. Slot的重复利用4.3.3. 静态变量与局部变量的对比4.4. 操作数栈4.5. 代码追踪4.6. 栈顶缓存技术技术4.7. 动态链接4.原创 2021-11-03 14:12:59 · 113 阅读 · 0 评论 -
第三章、运行时数据区及程序计数器
第三章、运行时数据区及程序计数器3、运行时数据区及程序计数器3.1. 运行时数据区3.1.1. 概述3.1.2. 线程3.1.3. JVM系统线程3.2. 程序计数器(PC寄存器)3.2.1. 介绍3.2.2. 作用3.2.3. 常见面试题笔记根据网课:尚硅谷宋红康JVM全套教程(详解java虚拟机)整理3、运行时数据区及程序计数器3.1. 运行时数据区3.1.1. 概述本节主要讲的是运行时数据区,也就是下图这部分,它是在类加载完成后的阶段 当我们通过前面的:类的加载-> 验证 -原创 2021-11-02 16:15:54 · 68 阅读 · 0 评论 -
第二章、类加载子系统
第二章、类加载子系统2、类加载子系统2.1. 内存结构概述2.2. 类加载器与类的加载过程加载阶段链接阶段初始化阶段2.3. 类加载器分类2.3.1. 虚拟机自带的加载器2.3.2. 用户自定义类加载器2.4. ClassLoader的使用说明2.5. 双亲委派机制2.6. 其他笔记根据网课:尚硅谷宋红康JVM全套教程(详解java虚拟机)整理2、类加载子系统2.1. 内存结构概述Class文件类加载子系统运行时数据区方法区堆程序计数器虚拟机原创 2021-11-02 15:49:20 · 63 阅读 · 0 评论 -
第一章、JVM与Java体系结构
第一章、JVM与Java体系结构1、JVM与Java体系结构1.1. 前言1.2. Java及JVM简介1.3. Java发展的重大事件1.4. 虚拟机与Java虚拟机1.5. JVM的整体结构1.6. Java代码执行流程1.7. JVM的架构模型1.8. JVM的生命周期1.9. JVM的发展历程1、JVM与Java体系结构1.1. 前言1、作为Java工程师的你曾被伤害过吗?你是否也遇到过这些问题?运行着的线上系统突然卡死,系统无法访问,甚至直接OOM想解决线上JVM GC问题,但却原创 2021-11-01 21:57:36 · 195 阅读 · 0 评论