java虚拟机
文章平均质量分 51
lldouble
这个作者很懒,什么都没留下…
展开
-
堆内存 OutOfMemoryError实例分析
一、Java堆溢出 堆参数设置-Xms 、-Xmx 均设置成20M -XX:+HeapDumpOnOutOfMemoryError :可以让虚拟机在出现内存溢出异常时Dump出当前的内存堆转储快照以便事后进行 分析 程序代码如下 抛出异常如下 二、堆转存快照的获取与分析 2.1 通过ps命令查原创 2018-01-31 15:16:27 · 417 阅读 · 0 评论 -
java虚拟机内存溢出各种场景总结
java堆溢出java堆用于存储对象实例,只要不断地创建对象,并且保证gc roots到对象之间有可达路径来避免垃圾回收机制来清楚这些对象,那么在 对象到达最大堆的容量限制后就会产生内存溢出溢出。异常:java.lang.OutOfMemoryError: java heap space要解决这个区域的异常,首先要区分是出现了内存泄露(Memory Leak)还是内存溢出(Memory...转载 2018-08-10 09:19:10 · 209 阅读 · 0 评论 -
java虚拟机跟踪调试参数
1.1 跟踪垃圾回收-读懂虚拟机日志Java的一大特色就是支持自动的垃圾回收(GC),但是有时候,如果垃圾回收频繁出现,或者占用了太长的CPU时间,就不得不引起重视。此时,就需要一些跟踪参数来进一步甄别垃圾回收器的效率和效果。最简单的一个GC参数是-XX:+PrintGC,使用这个参数启动Java虚拟机后,只要遇到GC,就会打印日志。如果需要更加详细的信息,则可以使用-XX:+PrintGCDet...转载 2018-07-04 15:39:03 · 687 阅读 · 0 评论 -
JVM之几种垃圾收集器简单介绍
本文中的垃圾收集器研究背景为:HotSpot+JDK1.7一、垃圾收集器概述如上图所示,垃圾回收算法一共有7个,3个属于年轻代、三个属于年老代,G1属于横跨年轻代和年老代的算法。JVM会从年轻代和年老代各选出一个算法进行组合,连线表示哪些算法可以组合使用 二、各个垃圾收集器说明1、Serial(年轻代)年轻代收集器,可以和Serial Old、CMS组合使用采用复制算法使用单线程进行垃圾回收,回收...转载 2018-07-04 15:09:06 · 3799 阅读 · 0 评论 -
JVM(8):JVM知识点总览-高级Java工程师面试必备
原文出处: 纯洁的微笑在江湖中要练就绝世武功必须内外兼备,精妙的招式和深厚的内功,武功的基础是内功。对于武功低(就像江南七怪)的人,招式更重要,因为他们不能靠内功直接去伤人,只能靠招式,利刃上优势来取胜了,但是练到高手之后,内功就更主要了。一个内功低的人招式在奇妙也打不过一个内功高的人。比如,你剑法再厉害,一剑刺过来,别人一掌打断你的剑,你还怎么使剑法,你一掌打到一个武功高的人身上,那人没什么事,...转载 2018-05-15 09:08:12 · 141 阅读 · 0 评论 -
JVM原理讲解和调优
一、什么是JVM JVM是Java Virtual Machine(Java虚拟机)的缩写,JVM是一种用于计算设备的规范,它是一个虚构出来的计算机,是通过在实际的计算机上仿真模拟各种计算机功能来实现的。 Java语言的一个非常重要的特点就是与平台的无关性。而使用Java虚拟机是实现这一特点的关键。一般的高级语言如果要在不同的平台上运行,至少需要编译成不同的目标代码。而引入Java语言...转载 2018-04-17 13:13:45 · 155 阅读 · 0 评论 -
Java虚拟机堆内存中对象的分配、布局、访问 -----以HotSpot虚拟机为例
一、对象的创建 1.1 检查类是否被加载、解析、初始化 1.2 分配对象所需的内存空间。两种分配方式:指针碰撞和空闲列表,指针碰撞方法适用于规整堆内存空间;而空闲列表方法适用于碎片化的堆内存空间。java堆内存空间的规整情况取决于收集器是否具有压缩整理功能。 1.3 初始化对象属性的"零值" 1.4 在对象头(Object Header)中设置对象的一原创 2018-01-30 10:05:56 · 222 阅读 · 0 评论 -
Java虚拟机内存模型简介
一、Java技术体系 (Write Once,Run Anywhere) 1.1 Java程序设计语言 1.2 各种硬件平台上的Java虚拟机 1.3 class文件格式 以上三部分统称为JDK 1.4 Java API类库 1.5 来自商业机构和开源社区的第三方java类库二、Java 虚拟机的发展史 2.1 Sun Classic VM (原创 2018-01-26 09:37:20 · 496 阅读 · 0 评论 -
栈内存--虚拟机栈、本地方法栈溢出-----以Hotspot虚拟机为例
一、栈内存参数 -Xss 二、栈溢出的两种情况 2.1 如果线程请求的栈深度大于虚拟机允许的最大深度时,抛出StackOverflowError异常 2.2 如果虚拟机在扩展栈时,无法申请到足够的空间,则抛出OutOfMemoryError异常三、StackOverflowError异常 3.1 代码 3.2 虚拟机栈深度为:1原创 2018-01-31 22:11:42 · 1764 阅读 · 2 评论 -
classloader机制研究-- 应用场景
本篇文章实际是<Dynamic class loading int the java virtual machine>的摘译,具体来讲是摘译了其中的第三部分<Applications of class loaders>。这个章节的题目翻译成中文的话应该是: class loaders的应用案例,主要是讲class loaders的两个重要应用场景。第一、重新装载类如...转载 2018-08-10 10:01:01 · 342 阅读 · 0 评论