jvm
文章平均质量分 90
布吉_岛
一个程序员
展开
-
JVM - 类的生命周期
本文个人博客地址:https://www.leafage.top/posts/detail/21A133QUD 生命周期: 一个类从被加载到虚拟机内存中开始,到卸载出内存为止,它的整个生命周期将会经历加载、验证、准备、解析、初始化、使用和卸载七个阶段,其中验证、准备、解析统称为连接。 一、加载: 通过类的全限定名,将类的 .class 文件中的二进制数据读到内存中; 将其所代表的静态存储结构转化为方法区的运行时数据结构; 在内存中生成代表该类的java.lang.Class对象,作为方法区该类的访问入口;原创 2021-10-15 09:36:10 · 170 阅读 · 0 评论 -
JVM - 垃圾回收算法
本文个人博客地址:https://www.leafage.top/posts/detail/21A138W45 JVM 垃圾判断算法: 引用计数算法(Reference Counting):给对象添加一个引用计数器,当有一个地方引用它,计数器加1,当一个引用失效,计数器减1,任何时候计数器值为0的对象就是不可能再被使用的。但是引用计数算法无法解决对象循环引用的问题(对象A应用对象B,对象B引用对象A,当A对象和B对象外部都不再存在引用时,它们之间仍然存在一个引用,这时引用计数算法就无法对其进行回收)。 跟原创 2021-10-15 09:32:52 · 76 阅读 · 0 评论 -
JVM运行时数据区
本文个人博客地址:JVM运行时数据区 (leafage.top) JVM 的运行时数据区分为: 程序计数器; 虚拟机栈; 本地方法栈; 堆; 方法区; 其中堆、方法区是线程共享的,程序计数器、虚拟机栈、本地方法栈是线程隔离的,结构图示如下: 1. 程序计数器: Java虚拟机的多线程是通过线程轮流切换、分配处理器执行时间的方式来实现的,在任何一个确定的时刻,一个处理器(对于多核处理器来说是一个内核)都只会执行一条线程中的指令。 为了线程切换后能恢复到正确的执行位置,每条线程都需要有一个独立的程序计原创 2021-08-18 10:38:54 · 172 阅读 · 0 评论