JVM
JVM是Java Virtual Machine(Java虚拟机)的缩写,JVM是一种用于计算设备的规范,它是一个虚构出来的计算机,是通过在实际的计算机上仿真模拟各种计算机功能来实现的。
suixinghero
真正的大师永远怀着一颗学徒的心
展开
-
JVM详解(5)--JMM
1.JMM定义JMM(Java内存模型Java Memory Model,简称JMM)本身是一种抽象的概念并不真实存在,它描述的是一组规范或规则,通过这组规范定义了程序中各个变量(包括实例字段,静态字段和构成数组对象的元素)的访问方式。2.JMM关于同步的规定:(1)线程解锁前,必须把共享变量的值刷新回主内存。(2)线程加锁前,必须读取主内存的最新值到自己的工作内存。(3)j加锁解锁是同...原创 2020-02-17 14:29:29 · 179 阅读 · 0 评论 -
JVM详解(4)--GC
一、GC是什么?1.次数频繁收集Young2.次数上较少收集Old3.基本不动元空间二、GC四大算法jvm在进行GC时,并非每次都对上面三个内存区域一起回收的,大部分时候回收的是指新生代...原创 2020-02-15 14:49:30 · 206 阅读 · 0 评论 -
JVM详解(3)--堆参数调优入门
一、堆参数调优入门(1)-Xms:JVM Heap 初始化大小-Xmx:JVM Heap 最大化大小-Xmn:JVM Heap 新生区的大小(2)java8在java8中,永久代已经被移除,被一个称为元空间的区域所取代。元空间的本质和永久代类似。元空间与永久代之间最大的区别在于:永久代使用的JVM的堆内存,但是java8以后的元空间并不在虚拟机中而是使用本机物理内存。因此,默...原创 2020-02-14 17:56:08 · 325 阅读 · 0 评论 -
JVM详解(2)--堆体系结构概述
一、堆体系结构概述1.Heap堆一个JVM实例只存在一个堆内存,堆内存的大小是可以调节的。类加载器读取了类文件后,需要把类、方法、常变量放到堆内存中,保存所有引用类型的真实信息,以便执行器执行,堆内存分为三部分:(1)Young Generation Space 新生区 Yong/New(2)Tenure generation space 老年区 Old/Tenure(3) Perm...原创 2020-02-13 18:54:17 · 781 阅读 · 0 评论 -
JVM详解(1)--JVM体系结论概述
一、JVM体系结论概述1.JVM位置总结:JVM是运行在操作系统之上的,它与硬件没有直接的交互。2.JVM体系结构概览3.类装载器ClassLoader(1)负责加载class,class文件在文件开头有特定的文件标示(这个表示是cafe babe),将class文件字节码内容加载到内存中,并将这些内容转换成方法区中的运行时数据结构并且ClassLoader只负责class文件的加...原创 2020-02-13 13:26:23 · 176 阅读 · 0 评论