JVM
hehmxy
码农追寻的诗和远方
展开
-
Java虚拟机(JVM)内存的迁移
对于JVM中方法区,永久代,元空间以及字符串常量池的迁移和string.intern方法在Java虚拟机(以下简称JVM)中,类包含其对应的元数据,比如类的层级信息,方法数据和方法信息(如字节码,栈和变量大小),运行时常量池,已确定的符号引用和虚方法表。在过去(当自定义类加载器使用不普遍的时候),类几乎是“静态的”并且很少被卸载和回收,因此类也可以被看成“永久的”。另外由于类作为JVM实现的一...转载 2018-10-22 22:31:08 · 317 阅读 · 0 评论 -
Major GC和Full GC的区别是什么?触发条件呢?
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。针对HotSpot VM的实现,它里面的GC其实准确分类只有两大种:Partial GC:并不收集整个GC堆的模式Young GC:只收集young gen的GCOld GC:只收集old gen的GC。只有CMS的concurrent collection是这个模式Mixed GC:收集整个young gen以及部分old g...转载 2018-10-22 23:12:13 · 153 阅读 · 0 评论 -
JVM 中的永久代
PermGen(永久代)绝大部分 Java 程序员应该都见过 “java.lang.OutOfMemoryError: PermGen space “这个异常。这里的 “PermGen space”其实指的就是方法区。不过方法区和“PermGen space”又有着本质的区别。前者是 JVM 的规范,而后者则是 JVM 规范的一种实现,并且只有 HotSpot 才有 “PermGen space...转载 2018-10-24 00:32:39 · 6693 阅读 · 0 评论 -
JVM-String常量池与运行时常量池
周志明先生著-《深入理解Java虚拟机》,书买回来好几天了,但是最近才准备开始搞一搞了(哭瞎……)。首先是第一章的Java以及JVM发展历史,大概知道了现行的应用最广泛的Java虚拟机是HotSpot,当然一些商业公司也有使用自己的虚拟机。JVM运行时数据区这是放在Java内存区域与内存溢出异常里面的必备知识,描述了Java虚拟机在运行时的数据区域↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓...转载 2019-04-08 22:50:30 · 243 阅读 · 0 评论 -
关于Heap Dump
转载自 关于Heap DumpHeap Dump是什么?Heap Dump也叫堆转储文件,是一个Java进程在某个时间点上的内存快照。Heap Dump是有着多种类型的。不过总体上heap dump在触发快照的时候都保存了java对象和类的信息。通常在写heap du...转载 2019-04-08 22:58:48 · 17169 阅读 · 1 评论 -
深入理解JAVA虚拟机---GC日志详解
1.编写JAVA代码import java.util.ArrayList;import java.util.List;/** * -verbose:gc -Xms30M -Xmx30M -Xmn10M -XX:PermSize=200M -XX:MaxPermSize=200M -XX:+PrintGCDetail...转载 2019-04-08 23:05:01 · 200 阅读 · 0 评论 -
Java 堆内存
Java 堆内存 堆内存Java 中的堆是 JVM 所管理的最大的一块内存空间,主要用于存放各种类的实例对象。在 Java 中,堆被划分成两个不同的区域:新生代 ( Young )、老年代 ( Old )。新生代 ( Young ) 又被划分为三个区域:Eden、From Survivor、To Survivor。这样划分的目的是为了使 J...转载 2019-04-08 23:10:30 · 1818 阅读 · 0 评论