![](https://img-blog.csdnimg.cn/20201014180756916.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
JVM
就叫希儿吧
这个作者很懒,什么都没留下…
展开
-
202012 04 JVM:GC算法 垃圾收集器
概述 垃圾收集 Garbage Collection通常被称为“GC”,JVM中,程序计数器、虚拟机栈、本地方法栈都是随线程而生随线程而灭,栈帧随着方法的进入和推出做入栈和出栈操作,实现了自动的内存清理,因此,我们的内存垃圾回收主要几种与Java堆和方法区中,在程序运行期间,这部分内存的分配和使用都是动态的 对象存活判断 判断对象是否存货一般有两种方式: 引用计数: 每个对象有一个引用计数属性,新增一个引用时计数加1,引用释放时计数减1,计数为0时可以回收。此方法简单,无法解决对象互相循环引用的问题。 可达原创 2020-12-04 21:01:49 · 110 阅读 · 1 评论 -
2020 12 04 JVM:JVM内存结构
先看一张图 ,了解JVM内存结构布局 JVM内存结构主要有三大块: 堆内存,方法区,栈。 堆内存是JVM中最大的一块由年轻代和老年代组成,而年轻代内存又被分成三部分: Eden空间、From Survivor空间、To Survivor空间 默认情况下年轻代按照8:1:1的比例来分配; 方法区存储类信息,常量,静态变量等数据,是线程共享的区域,为与Java堆区分,方法区还有一个别名Non-Heap; 栈又分为Java虚拟机栈和本地方法栈主要用户方法的执行。 老年代空间大小=堆空间大小-年轻代空间大小 从更原创 2020-12-04 19:46:36 · 84 阅读 · 0 评论 -
2020 12 03 JVM :类的加载机制
1、什么是类的加载 类的加载指的是将类的.class文件中的二进制数据读取到内存中,将其放在运行时数据区的方法区内,然后再堆区中创建一个java.lang.Class对象,用来封装类再方法区内的数据结构。类的加载的最终产品是位于堆区中的Class对象,Class对象封装了类在方法区内的数据结构,并且向java程序员提供了访问方法区的数据结构的接口 类加载器不需要等到某个类被“首次主动使用”时再加载它,JVM规范允许类加载器再预料某个类将要被使用的时候预先加载它,如果预先加载的过程中遇到了.class文件缺失原创 2020-12-03 21:15:27 · 136 阅读 · 0 评论