摘要: 内存布局 JVM内存大概分为几块区域:堆、栈、程序计数器、MetaSpace元空间、直接内存区,见下图 线程级内存区域:栈、程序计数器,堆与操作系统一样多个线程共享。 本地方法栈 本地方法栈是和虚拟机栈非常相似的一个区域,它服务的对象是 native 方法。你甚至可以认为虚拟机栈和本地方法栈是同一个 阅读全文
posted @ 2020-07-16 22:01 林一gg 阅读(110) 评论(0) 推荐(0)
摘要: 类的加载过程 加载过程可以分为3大阶段:加载 - 链接(验证 -准备 - 解析) - 初始化,如下图: 加载 这里的加载可以从字面意思理解,主要作用是将外部的 .class 文件转换为二进制数据并加载到JVM的方法区内 , 这里的外部可以指:jar、war、网络中等等 验证 校验 class 文件的 阅读全文
posted @ 2020-07-16 22:00 林一gg 阅读(135) 评论(0) 推荐(0)
摘要: 简单解释 内存分配的一种机制,Young区空间容纳不了对象时会把对象放到Old区,所以称之为Old区给Young区的空间做担保。继续联想。。。。java堆内存会使用谁来做空间担保呢? 官方解释 在发生Minor GC之前,虚拟机必须先检查老年代最大可用的连续空间是否大于新生代所有对象总 空间,如果这 阅读全文
posted @ 2020-07-16 21:58 林一gg 阅读(320) 评论(0) 推荐(0)