谢谢你们的回答。我知道答案了。如下:
根搜索算法
什么是根搜索算法
垃圾回收器从被称为GC Roots的点开始遍历遍历对象,凡是可以达到的点都会标记为存活,堆中不可到达的对象都会标记成垃圾,然后被清理掉。 GC Roots有哪些
类,由系统类加载器加载的类。这些类从不会被卸载,它们可以通过静态属性的方式持有对象的引用。注意,一般情况下由自定义的类加载器加载的类不能成为GC Roots
线程,存活的线程
Java方法栈中的局部变量或者参数
JNI方法栈中的局部变量或者参数
JNI全局引用
用做同步监控的对象
被JVM持有的对象,这些对象由于特殊的目的不被GC回收。这些对象可能是系统的类加载器,一些重要的异常处理类,一些为处理异常预留的对象,以及一些正在执行类加载的自定义的类加载器。但是具体有哪些前面提到的对象依赖于具体的JVM实现。
如何处理
基于引用对象遍历的垃圾回收器可以处理循环引用,只要是涉及到的对象不能从GC Roots强引用可到达,垃圾回收器都会进行清理来释放内存。
JAVA 垃圾收集 有环怎么处理
答案:2 悬赏:40 手机版
解决时间 2021-03-15 17:13
- 提问者网友:兔牙战士
- 2021-03-15 06:20
最佳答案
- 五星知识达人网友:鸠书
- 2021-03-15 06:31
java分强引用和弱引用,当某对象结束生命周期后,如果是弱引用,可能会被gc垃圾回收;如果是强引用,被其他对象引用,生命周期结束,也不会被gc回收
全部回答
- 1楼网友:枭雄戏美人
- 2021-03-15 07:16
java有专门的垃圾收集机制,在后台自动运行。程序不需要做任何处理,这和c/c++完全不一样。后者对于动态分配的内存,不用的时候还显式释放。
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯