JVM原理
未来谁可知
这个作者很懒,什么都没留下…
展开
-
jvm回收细节分析
jvm回收细节分析我们都知道判断一个对象是否存活的方法有两种!1.可达性分析 2. 引用计数法第二种不用说大家都知道会有一个循环引用的问题,所以引进了可达性分析的办法可达性分析分析的是GC Roots根节点对象,那么什么是根节点对象呢栈中有引用的局部变量,临时变量等方法区中的常量引用的对象,静态变量类对象,异常对象还有系统类加载器等都算从根节点引用搭上一条链关系的对象都是可达的,反之则为不可达对象,但是要明白并不是说,可达性分析完就马上回收不可达对象,还要判断对象是否可以执行fi原创 2020-08-11 22:18:28 · 95 阅读 · 0 评论 -
jvm中对象的解析
1. 对象的创建首先会去检查这个new指令是否能在常量池中找到一个符号引用,并且检查符号引用的类是否已经被加载链接初始化,没有的话先类加载,类加载完,就会为对象分配内存了,实际上是把一块确定的内存从java堆里划分出来,(这里我感觉是TLAB技术)】TLAB:提前先默认固定划分堆内存的1%,然后防止内存分配时指针碰撞,如果不够,再向剩余的堆内存进行申请1.1 分配内存方式指针碰撞假定内存都是规整的,使用过的放在一边,没有的放一边,中间放着一个分配指针,分配内存的话就是把指针向空间内存方向移动对原创 2020-08-11 11:23:00 · 207 阅读 · 1 评论 -
了解JVM垃圾回收器
了解JVM垃圾回收器1. 7种垃圾回收器种类回收器名字串行Serial ,Serial Old并行ParNew,Parallel SCavenge,Parallel Old并发:CMS,G1按照分区的划分Young G : Serial ,Parallel SCavenge,ParNew,Old G: Serial Old,Parallel Old,CMSG1是两个都可以,可以利用-XX:+PrintCommandLineFlags -XX:+原创 2020-06-22 09:50:21 · 183 阅读 · 1 评论 -
JVM学习笔记
1.JVM的位置2.JVM体系结构3.类加载器作用:加载Class文件根加载器Root(最终执行)扩展加载器EXC应用加载器APP自定义加载器4.双亲委派机制1 类模板通过类装载器,然后类加载器收到类加载的请求,2 将这个请求向上委托给父类加载器取完成,一直向上委托,直到启动类加载器3 启动类加载器检查是否能够加载当前这个类,能加载就结束,使用当前加载器,否则,抛出异常,通知子...原创 2020-03-03 13:58:58 · 159 阅读 · 0 评论