jvm
XP后花园
这个作者很懒,什么都没留下…
展开
-
JVM初探- 内存分配、GC原理与垃圾收集器
JVM初探- 内存分配、GC原理与垃圾收集器标签 : JVMJVM内存的分配与回收大致可分为如下4个步骤: 何时分配 -> 怎样分配 -> 何时回收 -> 怎样回收. 除了在概念上可简单认为new时分配外, 我们着重介绍后面的3个步骤:I. 怎样分配- JVM内存分配策略对象内存主要分配在新生代Eden区, 如果启用了本地线程分配缓冲, 则优先在TLAB上分配, 少数情况能会直接...转载 2018-05-20 18:47:26 · 118 阅读 · 0 评论 -
Java 虚拟机类加载机制
看到这个题目,很多人会觉得我写我的java代码,至于类,JVM爱怎么加载就怎么加载,博主有很长一段时间也是这么认为的。随着编程经验的日积月累,越来越感觉到了解虚拟机相关要领的重要性。闲话不多说,老规矩,先来一段代码吊吊胃口。public class SSClass{ static { System.out.println("SSClass"); }} publ...转载 2018-05-20 22:53:16 · 81 阅读 · 0 评论 -
类加载器的工作原理
Java类加载器的作用就是在运行时加载类。Java类加载器基于三个机制:委托、可见性和单一性。委托机制是指将加载一个类的请求交给父类加载器,如果这个父类加载器不能够找到或者加载这个类,那么再加载它。可见性的原理是子类的加载器可以看见所有的父类加载器加载的类,而父类加载器看不到子类加载器加载的类。单一性原理是指仅加载一个类一次,这是由委托机制确保子类加载器不会再次加载父类加载器加载过的类。正确理解类...转载 2018-05-21 00:14:38 · 290 阅读 · 0 评论 -
类加载器深入理解
虚拟机设计团队把类加载阶段中“通过一个类的全限定名来获取描述此类的二进制字节流”这个动作放到Java虚拟机外部去实现,以便让应用程序自己决定如何去获取所需要的类。实现这个动作的模块称为“类加载器”。类加载器在类层次划分、OSGI、热部署、代码加密等领域大放异彩,成为了Java技术体系中一块重要的基石。类与类加载器类的唯一性对于任意一个类,都需要由加载它的类加载器和类的全限定名一同确定其在Java虚...转载 2018-05-21 00:45:24 · 147 阅读 · 0 评论 -
JVM初探 -JVM内存模型
JVM是每个Java开发每天都会接触到的东西, 其相关知识也应该是每个人都要深入了解的. 但接触了很多人发现: 或了解片面或知识体系陈旧. 因此最近抽时间研读了几本评价较高的JVM入门书籍, 算是总结于此. 本系列博客的主体来自 深入理解Java虚拟机(第二版)和 实战Java虚拟机 两部书, 部分内容参考 HotSpot实战 和 深入理解计算机系统 以及网上大量的文章. 若文内有引文未注明出处的...转载 2018-05-21 09:57:39 · 97 阅读 · 0 评论 -
初探jvm虚拟机之内存管理(一)
本篇记录一些概念性的东西,后续结合实例分析虚拟机的内存机制。java虚拟机在程序运行时将内存划分为以下几个区域,每个区域作用,生命周期各不相同程序计数器 虚拟机栈 本地方法栈 方法区 堆程序计数器 线程执行的字节码行号指示器。 多线程是通过时间片轮转法获取cpu时间,执行线程,因此当线程再次获得cpu时须确保定位到上次执行到哪里,由此可见程序计数器是线程私有的 虚拟机栈 虚拟机栈体现方法执行时的内...转载 2018-05-21 10:39:54 · 204 阅读 · 0 评论 -
JVM(JAVA虚拟机)调优及原理
堆内存设置原理JVM堆内存分为2块:Permanent Space 和 Heap Space。Permanent 即 持久代(Permanent Generation),主要存放的是Java类定义信息,与垃圾收集器要收集的Java对象关系不大。Heap = { Old + NEW = {Eden, from, to} },Old 即 年老代(Old Generation),New 即 年轻代(Yo...转载 2018-06-13 13:46:56 · 216 阅读 · 0 评论