![](https://img-blog.csdnimg.cn/20201014180756923.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
JVM
JVM
秋夜无霜
好学Java
展开
-
Java类中的静态变量、成员变量、局部变量
文章目录概述1.运行时数据区介绍2.GC Roots的对象3.差异对比3.1 成员变量 && 局部变量3.2 成员变量 && 静态变量3.3 final、static、static final4.回收机制概述本文主要讲述Java类的成员变量(实例变量)、静态变量(类变量)、局部变量的差异(涉及到存储区域,加载时机等方面)。1.运行时数据区介绍各个数据区...原创 2019-12-25 13:51:52 · 561 阅读 · 0 评论 -
Metaspace 之一:Metaspace整体介绍(永久代被替换原因、元空间特点、元空间内存查看分析方法)
文章目录回顾一、元空间替换持久代1.1、持久代1.2、为什么移除持久代1.3、移除持久代后,PermGen空间的状况二、元空间2.1、metaspace的组成2.2、元空间的特点2.3、元空间的内存分配模型理解_mark和_klass指针指针压缩概要元空间和类指针压缩空间的区别三、元空间内存管理四、Metaspace调优MaxMetaspaceSize的调优CompressedClassSpace...转载 2019-12-20 16:36:44 · 864 阅读 · 0 评论 -
JVM系列三:JVM参数设置、分析
不管是YGC还是Full GC,GC过程中都会对导致程序运行中中断,正确的选择不同的GC策略,调整JVM、GC的参数,可以极大的减少由于GC工作,而导致的程序运行中断方面的问题,进而适当的提高Java程序的工作效率。但是调整GC是以个极为复杂的过程,由于各个程序具备不同的特点,如:web和GUI程序就有很大区别(Web可以适当的停顿,但GUI停顿是客户无法接受的),而且由于跑在各个机器上的配置不同...转载 2019-09-13 18:19:14 · 205 阅读 · 1 评论 -
JVM系列二:GC策略&内存申请、对象衰老
JVM里的GC(Garbage Collection)的算法有很多种,如标记清除收集器,压缩收集器,分代收集器等等现在比较常用的是分代收集(generational collection,也是SUN VM使用的,J2SE1.2之后引入),即将内存分为几个区域,将不同生命周期的对象放在不同区域里:young generation,tenured generation和permanet genera...转载 2019-09-13 17:36:09 · 84 阅读 · 0 评论 -
JVM系列一:JVM内存组成及分配
1、java内存组成介绍:堆(Heap)和非堆(Non-heap)内存按照官方的说法:“Java 虚拟机具有一个堆,堆是运行时数据区域,所有类实例和数组的内存均从此处分配。堆是在 Java 虚拟机启动时创建的。”“在JVM中堆之外的内存称为非堆内存(Non-heap memory)”。可以看出JVM主要管理两种类型的内存:堆和非堆。简单来说堆就是Java代码可及的内存,是留给开发人员使用的;非...转载 2019-09-13 17:16:55 · 173 阅读 · 0 评论