JVM
文章平均质量分 86
莫言zero
当你的才华还撑不起你的野心的时候,你就应该静下心来学习,愿你在我这里能有所收获
展开
-
JVM常用垃圾回收算法
垃圾回收算法标记清楚算法执行过程当堆中有效内存空间被耗尽的时候,就会停止整个程序(stop the world),然后进行两项工作,第一项是标记,第二项是清理。标记阶段:垃圾回收器从根对象进行遍历,标记所有被引用的对象,一般是在对象的header中记录可达对象清除阶段垃圾回收器对堆内存从头到尾进行线性遍历,如果发现某个对象在其Header中没有标记为可达对象,则进行回收缺点:效率不算高在进行GC的时候,需要停止整个应用程序,导致用户体验差这种方式清理出来的空闲内原创 2021-07-30 11:47:03 · 204 阅读 · 0 评论 -
JVM类的加载过程
文章目录一、类加载子系统概述类加载ClassLoder角色概述类的加载过程加载加载.class文件的方式链接验证(Verify)准备 (Pepare)解析阶段(Resolve)初始化二、 JVM的加载类启动器启动类加载器(Bootstrap ClassLoader)扩展类加载器 (Extension ClassLoader)应用程序类加载器(系统类加载器,AppClassLoader)用户自定义类加载器为什么要自定义类加载器?三、 双亲委派机制双亲委派模式的工作原理双亲委派模式的优势四、沙箱安全机制一、类原创 2021-03-06 19:14:26 · 331 阅读 · 4 评论 -
JAVA虚拟机栈
Java虚拟机栈是什么?Java虚拟机栈(Java Virtual Machine Stack),早期也叫Java栈,每个线程在创建时都会创建一个虚拟机栈,其内部保存一个个的栈帧(Stack Frame),对应着一次次的Java方法调用生命周期生命周期和线程是一致的作用主管Java程序的运行,他保存方法的局部变量表、部分结果、并参与方法的调用和返回。内存中的栈与堆栈是运行时的单位,而堆是存储的单位。栈解决程序的运行问题,及程序如何执行,或者说如何处理数据。堆解决的是数据存储的原创 2021-02-25 13:06:46 · 2169 阅读 · 8 评论 -
JAVA虚拟机
JAVA虚拟机所谓虚拟机(Virtual Machine),就是一台虚拟的计算机。他是一款软件,用来执行一系列虚拟机计算机指令。大体上,虚拟机可以分为系统虚拟机和程序虚拟机,。大名鼎鼎的Visual Box,VMware就属于系统虚拟机,他们完全是对物理计算机的仿真,提供了一个可运行完整操作系统的软件平台。程序虚拟机的典型代表就是Java虚拟机,他专门为执行单个计算机程序而设计,在Java虚拟机中执行的指令我们称之为Java字节码指令JAVA虚拟机Java虚拟机是一台执行Java字节码的虚拟计原创 2021-02-21 19:19:35 · 175 阅读 · 4 评论 -
JVM PC寄存器
PC 寄存器 JVM中的程序寄存器(Program Counter Register)中,Register的命名源于CPU的寄存器,寄存器存储指令相关的现场信息,CPU只有把数据装载到寄存器才能够运行作用PC寄存器用来存储指向下一条指令的地址,也即将要执行的指令代码。有执行引擎读取下一条指令详细的介绍他是一块很小的内存空间,几乎可以忽略不计,也是速度最快的存储区域在JVM规范中,每个线程都有他自己的程序计数器,是线程私有的,生命周期与线程的生命周期保持一致任何时候一个线程都只有一原创 2021-02-21 14:26:04 · 315 阅读 · 0 评论