
JVM
文章平均质量分 83
小乔不掉发
爱编程 爱生活
展开
-
JVM 的 垃圾回收(GC)超全解析,面试官看了直呼内行!!还不快收藏起来
我是目录:1、垃圾回收的时机:2、垃圾回收机制 ------ 如何判断对象已死? Garbage Collection(GC),Java进程在 启动后 会 创建垃圾回收线程,来对 内存中无用的对象 进行 回收 1、垃圾回收的时机: (1)System.gc() 显示的调用 System.gc():此方法的调用是 建议 JVM进行 FGC(Full GC),虽然只是建议而非一定,但很多情况下它会触发 FGC,从而增加FGC的频率。一般不使用此方法,让虚拟机自己去管理它的内存。 (2)JVM 垃圾回收机制决定原创 2021-05-14 17:01:02 · 727 阅读 · 2 评论 -
JVM 类加载机制全面解析,一篇完整彻底搞懂
我是目录:1、概述:2、类的生命周期:3、类加载器:4、类加载机制 — — 双亲委派机制 1、概述: 2、类的生命周期: 包括7个阶段: 加载、验证、准备、解析、初始化、使用 和 卸载。 (其中验证、准备、解析3个部分统称为连接(Linking)) 解析阶段 在某些情况下可以在初始化阶段之后再开始,这是为了支持Java语言的运行时绑定(也称为动态绑定或晚期绑定)。 加载: 通过一个类的全限定名来获取定义此类的二进制字节流。 将这个字节流所代表的静态存储结构转化为方法区的运行时数据结构。 (方法区:JD原创 2021-05-06 22:19:13 · 656 阅读 · 0 评论 -
Java 内存模型(JMM),一看就懂 清晰明了
一、线程私有的内存区域: 1、程序计数器: 当前线程所执行的字节码的行号指示器 (字节码解释器工作时就是通过改变这个计数器的值来选取下一条需要执行的字节码指令,它是程序控制流的指示器) 2、虚拟机栈: 线程调用 Java 方法时,每个方法每次调用都会生成一个栈帧 此区域一共会产生以下两种异常: (1)如果线程请求的栈深度大于虚拟机所允许的深度(-Xss设置栈容量),将会抛出StackOverFlowError异常。 (2)虚拟机在动态扩展时无法申请到足够的内存,会抛出OOM(OutOfMemoryE..原创 2021-05-06 22:18:04 · 269 阅读 · 3 评论