JVM
文章平均质量分 96
jvm有关知识分享
活跃的咸鱼
博客内容大部分均来日常学习的笔记。
展开
-
Java反射与类加载过程会擦出什么样的火花
反射与类加载一, 反射机制原理二,反射机制中的问题解答三,反射中的常用API一, 反射机制原理反射机制介绍1.反射机制允许程序在执行期借助于ReflectionAPI取得任何类的内部信息(比如成员变量,构造器,成员方法等等)并能操作对象的属性及方法。反射在设计模式和框架底层都会用到.2.加载完类之后,在堆中就产生了一个Class类型的对象(一 个类只有一个Class对象),这个对象包含了类的完整结构信息。通过这个对象得到类的结构。这个Class对象就像一面镜子,透过这个镜子看到类的结构,所以,形象的原创 2021-09-06 18:02:39 · 475 阅读 · 1 评论 -
JVM指令手册
JVM指令手册一、栈和局部变量操作二、类型转换相关三、整数运算相关四、逻辑运算相关五、对象和数组相关指令六、控制流七、方法调用与返回一、栈和局部变量操作将常量压入栈的指令指令功能aconst_null将null对象引用压入栈iconst_m1将int类型常量-1压入栈iconst_0将int类型常量0压入栈iconst_1将int类型常量1压入栈iconst_2将int类型常量2压入栈iconst_3将int类型常量3压入栈icons原创 2021-09-02 13:06:09 · 894 阅读 · 0 评论 -
JVM运行时数据区之虚拟机栈,本地方法栈和程序计数器
JVM运行时数据区一. 运行时数据区概述二. 程序计数器三. 本地方法栈四. 虚拟机栈五. 方法区六. 堆区一. 运行时数据区概述????????内存是非常重要的系统资源,是硬盘和CPU的中间仓库及桥梁,承载着操作系统和应用程序的实时运行。JVM内存布局规定了Java在运行过程中内存申请、分配、管理的策略,保证了JVM的高效稳定运行。不同的JVM对于内存的划分方式和管理机制存在着部分差异。经典的JVM运行时数据区内存布局如下:????????Java虚拟机定义了若千种程序运行期间会使用到的运行时数据原创 2021-08-23 14:17:44 · 664 阅读 · 5 评论 -
JVM之GC日志分析与对象内存分配回收策略
GC日志分析与内存分配回收策略一. GC日志分析的引入二. GC的分类 与GC日志结构剖析三. JDK1.9以前的日志分析四. JDK1.9以后的日志分析五. 内存分配回收策略一. GC日志分析的引入????GC日志分析的重要性:阅读分析虚拟机和垃圾收集器的日志是处理Java虚拟机内存问题必备的基础技能。????垃圾收集日志面临的问题:垃圾收集器日志是一系列人为设定的规则,多少有点随开发者编码时的心情而定,没有任何的“业界标准”可言,换句话说,每个收集器的日志格式都可能不一样。除此以外还有一个麻烦,在原创 2021-08-12 14:46:53 · 623 阅读 · 3 评论 -
JVM之垃圾收集算法与垃圾收集器
Java垃圾收集算法与垃圾收集器1. 垃圾回收的相关概念1.1 垃圾收集的经典五连问2. 垃圾回收相关算法3. 常用的垃圾收集器1. 垃圾回收的相关概念1.1 垃圾收集的经典五连问一. 什么是垃圾?二.垃圾什么时候回收?三. 垃圾如何回收?四.什么是内存泄漏?五. 哪些内存需要回收?2. 垃圾回收相关算法3. 常用的垃圾收集器...原创 2021-08-08 12:47:30 · 1220 阅读 · 3 评论 -
JVM之内存泄漏问题
何为内存泄漏?(1): 内存泄漏也称作“存储渗漏”。严格来说,只有对象不会再被程序用到了,但是GC又不能回收他们的情况,才叫内存泄漏。(2): 但实际情况很多时候一些不太好的实践(或疏忽)会导致对象的生命周期变得很长甚至导致OOM,也可以叫做宽泛意义上的“内存泄漏”。如下所示:对象X引用对象Y,X的生命周期比Y的生命周期长;那么当Y生命周期结束的时候,X依然引用着Y,这时候,垃圾回收器是不会回收对象Y的;如果对象X还引用着生命周期比较短的A、B、C,对象A又引用着对象a、b、C,这样就可能造成原创 2021-08-05 17:43:03 · 658 阅读 · 2 评论