JVM
文章平均质量分 88
放开这颗白菜让我来
微信公众号“放开这颗白菜让我来”
哥拱的不仅仅是白菜,是寂寞
展开
-
【JVM】十五、垃圾回收相关算法
大家好,我是被白菜拱的猪。 一个热爱学习废寝忘食头悬梁锥刺股,痴迷于girl的潇洒从容淡然coding handsome boy。 假如你喜欢我的文字,欢迎关注公众号“放开这颗白菜让我来”。 文章目录15-垃圾回收相关算法一、 标记阶段:引用计数算法垃圾标记阶段:对象存活判断方式一:引用计数算法**小结**循环引用二、标记阶段:可达性分析算法方式二:可达性分析(或根搜索算法、追踪性垃圾收集)GC Roots注意:三、对象的finalizetion机制对象的finalization机制生存还是死亡?具体过程四原创 2021-01-16 19:24:56 · 103 阅读 · 0 评论 -
【JVM】十四、垃圾回收概述
大家好,我是被白菜拱的猪。 一个热爱学习废寝忘食头悬梁锥刺股,痴迷于girl的潇洒从容淡然coding handsome boy。 假如你喜欢我的文字,欢迎关注公众号“放开这颗白菜让我来”。 文章目录14-垃圾回收概述一、什么是垃圾二、为什么需要GC三、早期垃圾回收四、Java垃圾回收机制 14-垃圾回收概述 一、什么是垃圾 垃圾收集,不是 Java 语言的伴生产物。早在 1960 年,第一门开始使用内存动态分配和垃圾收集技术的 Lisp 语言诞生。 关于垃圾收集有三个经典问题: 哪些内存需要回收? 什原创 2021-01-16 17:09:13 · 229 阅读 · 0 评论 -
【JVM】十三、String Table
大家好,我是被白菜拱的猪。 一个热爱学习废寝忘食头悬梁锥刺股,痴迷于girl的潇洒从容淡然coding handsome boy。 假如你喜欢我的文字,欢迎关注公众号“放开这颗白菜让我来”。 本篇结合【面试准备】关于String若干细节 阅读效果更佳。 文章目录13-String Table一、String的基本特性String在 jdk9 中存储结构变更String 存储结构变更String的基本特性二、String的内存分配StringTable为什么要调整呢?三、String的基本操作四、字符串拼接操原创 2021-01-12 18:02:04 · 101 阅读 · 0 评论 -
【JVM】十二、执行引擎
大家好,我是被白菜拱的猪。 一个热爱学习废寝忘食头悬梁锥刺股,痴迷于girl的潇洒从容淡然coding handsome boy。 假如你喜欢我的文字,欢迎关注公众号“放开这颗白菜让我来”。 文章目录12-执行引擎一、执行引擎概述执行引擎概述执行引擎的工作过程二、Java 代码编译和执行过程三、机器码、指令、汇编语言机器码指令指令集汇编语言高级语言字节码C/C++源代码执行过程四、解释器解释器解释器工作机制(或工作任务)解释器分类现状五、JIT 编译器Java代码的执行分类问题来了HotSpot JVM 的原创 2021-01-11 13:00:27 · 109 阅读 · 0 评论 -
【JVM】十一、直接内存
大家好,我是被白菜拱的猪。 一个热爱学习废寝忘食头悬梁锥刺股,痴迷于girl的潇洒从容淡然coding handsome boy。 假如你喜欢我的文字,欢迎关注公众号“放开这颗白菜让我来”。 文章目录11-直接内存(Direct Memory)直接内存概述非直接缓冲区直接缓冲区直接内存概述 11-直接内存(Direct Memory) 直接内存概述 不是虚拟机运行时数据区的一部分,也不是《Java虚拟机规范》中定义的内存区域。 直接内存是在 Java 堆外的、直接向系统申请的内存空间。 来源于 NIO,通原创 2021-01-10 20:41:59 · 82 阅读 · 0 评论 -
【JVM】十、对象的实例化、内存布局与访问定位
大家好,我是被白菜拱的猪。 一个热爱学习废寝忘食头悬梁锥刺股,痴迷于girl的潇洒从容淡然coding handsome boy。 假如你喜欢我的文字,欢迎关注公众号“放开这颗白菜让我来”。 文章目录10-对象的实例化、内存布局与访问定位一、对象的实例化创建对象的方法创建对象的步骤二、对象的内存布局对象头(Header)实例数据对象填充图示三、对象的访问定位图示对象访问方式句柄访问直接指针(HotSpot采用) 10-对象的实例化、内存布局与访问定位 一、对象的实例化 创建对象的方法 new,使用new原创 2021-01-09 19:18:44 · 111 阅读 · 0 评论 -
【JVM】九、方法区
大家好,我是被白菜拱的猪。 一个热爱学习废寝忘食头悬梁锥刺股,痴迷于girl的潇洒从容淡然coding handsome boy。 假如你喜欢我的文字,欢迎关注公众号“放开这颗白菜让我来” 文章目录09-方法区一、栈、堆、方法区的交互关系二、方法区的理解方法区在哪里方法区的基本理解HotSpot中方法区的演进三、设置方法区大小与OOM设置方法区内存的大小如果解决这些OOM四、方法区的内部结构方法区存储什么方法区内部结构类型信息域(Field)信息方法(Method)信息non-final的类变量补充说明:全原创 2021-01-08 20:46:11 · 73 阅读 · 0 评论 -
【JVM】八、堆
大家好,我是被白菜拱的猪。 一个热爱学习废寝忘食头悬梁锥刺股,痴迷于girl的潇洒从容淡然coding handsome boy。 假如你喜欢我的文字,欢迎关注公众号“放开这颗白菜让我来” 文章目录08-堆一、堆的核心概述核心概述内存细分二、设置堆内存大小与OOM堆空间大小的设置三、年轻代与老年代四、图解对象分配过程对象分配过程常用的调优工具五、Minor GC、Major GC、Full GCMinor GC、Major GC、Full GC最简单的分代式GC策略的触发条件六、堆空间分代思想七、内存分配策原创 2021-01-07 13:59:38 · 94 阅读 · 0 评论 -
【JVM】七、本地方法栈
大家好,我是被白菜拱的猪。 一个热爱学习废寝忘食头悬梁锥刺股,痴迷于girl的潇洒从容淡然coding handsome boy。 假如你喜欢我的文字,欢迎关注公众号“放开这颗白菜让我来” 文章目录07-本地方法栈总结 07-本地方法栈 Java虚拟机栈用于管理 Java 方法的调用,而本地方法栈用于管理本地方法的调用。 本地方法栈,也是线程私有有。 运行被实现成固定或者可动态扩展的内存大小。(在内存溢出方面是相同的) 如果线程请求分配的栈容量超过本地方法栈允许的最大容量,Java虚拟机将会抛原创 2021-01-06 11:48:28 · 69 阅读 · 0 评论 -
【JVM】六、本地方法接口
大家好,我是被白菜拱的猪。 一个热爱学习废寝忘食头悬梁锥刺股,痴迷于girl的潇洒从容淡然coding handsome boy。 假如你喜欢我的文字,欢迎关注公众号“放开这颗白菜让我来” 文章目录06-本地方法接口什么是本地方法为什么要使用Native Method现状 06-本地方法接口 什么是本地方法 简单地讲,一个Native Method就是一个Java调用非Java代码的接口。一个Native Method是这样一个Java方法:该方法的实现由非Java语言实现,比如 C 。这个特征并非Jav原创 2021-01-06 11:29:25 · 55 阅读 · 0 评论 -
【JVM】五、虚拟机栈
大家好,我是被白菜拱的猪。 一个热爱学习废寝忘食头悬梁锥刺股,痴迷于girl的潇洒从容淡然coding handsome boy。 假如你喜欢我的文字,欢迎关注公众号“放开这颗白菜让我来” 文章目录05-虚拟机栈一、虚拟机栈概述虚拟机栈出现的背景内存中的栈和堆虚拟机栈的基本内容栈中可能出现的异常二、栈的存储单位栈中存储什么栈运行原理栈帧的内部结构三、局部变量表局部变量表关于Slot的理解Slot的重复使用举例:静态变量与局部变量的对比补充说明四、操作数栈五、代码追踪六、栈顶缓存技术七、动态链接八、方法的调用原创 2021-01-04 19:56:06 · 146 阅读 · 0 评论 -
【JVM】四、程序计数器(PC寄存器)
大家好,我是被白菜拱的猪。 一个热爱学习废寝忘食头悬梁锥刺股,痴迷于girl的潇洒从容淡然coding handsome boy。 假如你喜欢我的文字,欢迎关注公众号“放开这颗白菜让我来” 文章目录04-程序计数器(PC寄存器)一、PC Register介绍二、举例说明三、两个常见问题 04-程序计数器(PC寄存器) 一、PC Register介绍 JVM中的程序计数寄存器(Program Counter Register) 中,Register 的命名源于 CPU的寄存器,寄存器存储指令相关的现场信息。C原创 2020-12-30 10:39:31 · 233 阅读 · 0 评论 -
【JVM】三、运行时数据区概述及线程
大家好,我是被白菜拱的猪。 一个热爱学习废寝忘食头悬梁锥刺股,痴迷于girl的潇洒从容淡然coding handsome boy。 假如你喜欢我的文字,欢迎关注公众号“放开这颗白菜让我来” 文章目录03-运行时数据区概述及线程一、概述二、线程 03-运行时数据区概述及线程 一、概述 执行引擎执行都会用到运行时数据区 就像厨师做饭,刀具调料就是运行时数据区,厨师就是执行引擎,做完饭还要清理桌面进行回收。 内存是非常重要的系统资源,是硬盘和CPU的中间仓库及桥梁,承载着操作系统和应用程序的实时运行。JVM原创 2020-12-30 10:35:31 · 96 阅读 · 0 评论 -
【JVM】二、类加载子系统
大家好,我是被白菜拱的猪。 一个热爱学习废寝忘食头悬梁锥刺股,痴迷于girl的潇洒从容淡然coding handsome boy。 文章目录02-类加载子系统概述类加载器与类的加载过程1、类加载器子系统的作用2、类加载器ClassLoader角色3、类的加载过程加载连接解析初始化:4、类加载的分类5、关于ClassLoader双亲委派机制1、工作原理2、优势3、沙箱安全机制其他1、判断两个class对象相同2、对类加载器的引用3、类的主动使用和被动使用总结 02-类加载子系统 概述 把class文件加载到内原创 2020-12-29 17:10:39 · 90 阅读 · 1 评论