
jvm
Coder 之路
这个作者很懒,什么都没留下…
展开
-
Jvm 深入理解(二)—— Java 虚拟机的内存管理
Jvm 内存管理程序计数器程序计数器是一块比较小的内存空间,可以看作是当前线程所执行的字节码的行号指示器程序计数器属于线程独占区如果线程执行的是 java 方法,这个计数器记录的是正在执行的虚拟机字节码指令的地址,如果执行的是native方法,这个计数器的值为undefined程序计数器是 Java 虚拟机中唯一没有OutOfMemoryError( 内存溢出 )的区域Java虚拟...原创 2019-04-03 21:03:19 · 235 阅读 · 0 评论 -
Jvm 深入理解(四)—— 探究对象的结构(Hotspot虚拟机)
对象结构在HotSpot虚拟机中,对象在内存中的存储分为三块区域:对象头(header)、实例数据(instance data)、对齐填充(padding)。普通对象的结构数组对象的结构上面两个图中可以看出,以下信息- markWord(标记字段):大小是4个字节,主要存储一系列的标志位信息,不如轻量级锁的标志位、偏向锁的标志位等- Class pointer(类型指针):大小...原创 2019-04-10 20:53:52 · 282 阅读 · 0 评论 -
Jvm 深入理解(三)—— 对象创建过程
对象的创建过程给对象分配内存线程安全问题初始化对象执行构造方法原创 2019-04-07 11:07:22 · 210 阅读 · 0 评论 -
Jvm 深入理解(一) —— jvm简介及内存模型
Jvm 简介jvm是java代码的运行平台,真正实现Java代码,一次编译、到处运行。是Java跨平台的基础。经过20年的发展,jvm先后出现了很多版本和类型,目前比较流行的、性能比较高的有 hotspot、j9、jRocket。国内也有一些定制化开发的jvm,比如taobaoVM是阿里根据淘宝的业务需求,开发的java 虚拟机,在适合的配置下,效率非常高。Jvm的内存模型jvm主要分为...原创 2019-04-03 19:41:46 · 249 阅读 · 0 评论 -
Jvm 深入理解(五)—— 垃圾收集算法
Java 进程的内存分配和垃圾收集由Jvm负责完成,前面有说过内存分配的原则,那垃圾收集是如何完成的呢。通过标记算法确定哪些对象可以回收,通过回收算法将可回收的对象回收掉。标记算法引用计数法(Java中没有采用这种算法)原理:在对象中添加一个计数器,每一次被引用,计数器 +1 ,当引用失效后,技数器 -1 。当技数器为0时,对象即可被回收。优点:实现简单,判断快,减少标记时间缺点:无法...原创 2019-05-08 10:24:54 · 200 阅读 · 0 评论