
jvm
张一柯
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
java中内存泄漏的问题
1.什么是java中的内存泄露内存泄漏定义:无用对象持续占有内存或无用对象的内存得不到释放,从而造成内存空间的浪费。满足的条件:1.对象与GCROOT的节点相连,不是垃圾对象;2.对象是无用的这些对象不会被GC所回收,然而它却占用内存内存泄漏的根本原因:长生命周期的对象持有短生命周期对象的引用就很可能发生内存泄漏,尽管短生命周期对象已经不再需要,但是因为长生命周期持有它的引用而导...原创 2020-03-26 19:40:00 · 268 阅读 · 0 评论 -
java如何判断一个对象是否存活
1. 引用计数法引用计数器法:每个对象设置一个引用计数器,当对象被引用,计算器加1,当引用失效,计算器减一。当计数器为0时,表示引用失效,也就是"死对象",可以被垃圾回收机制回收。缺陷:无法解决循环依赖的问题。有两个对象A、B。当A引用B,B引用A时,那么此时A、B对象都不为0,垃圾回收机制无法被回收。2. 可达性算法(引用链法)从GCRoot开始向下搜索,如果一个对象没有与任何引...原创 2020-03-26 19:19:08 · 1435 阅读 · 0 评论 -
类加载机制
1.原理 JVM将class文件字节码文件加载到内存中, 并将这些静态数据转换成方法区中的运行时数据结构, 在堆(并不一定在堆中,HotSpot在方法区中)中生成一个代表这个类的java.lang.Class 对象, 作为方法区类数据的访问入口。2.过程 VM类加载机制分为五个部分:加载,验证,准备,解析,初始化.初始化条件:1、使用new关键字实例化对象、访问或者设置一个类的静...原创 2020-01-13 16:17:22 · 207 阅读 · 0 评论