Java 垃圾回收 (未完成)
来源:互联网 发布:公安机关优化发展环境 编辑:程序博客网 时间:2024/06/05 19:45
垃圾回收
早就知道java会垃圾回收了,但是对其中道理一点都不了解,我想成为大神,还是必须要多懂一些,多会一些,多写一些吧;
垃圾回收的算法和思想
- 引用计数法
这个相当于计数,因为java每个变量的名字实际上是一种引用,我们可以给一个对象很多引用,那么同时,当对象没有引用的时候,说明这个对象没有用了,可以扔掉了;
ps:对象都没有引用了,说明这块地址,这个对象,程序已经使用不了,那就赶紧清理呗 - tracing算法 追踪算法
当我们通过计数这种方式,进行垃圾清理,我们会多出很多操作,每次都要加减,还要存储计数;那么可不可以不要这么麻烦呢,追踪算法,顾名思义,追踪,通过所有引用追踪对象,如果对象存在,将其标记;追踪结束后,回收那些没有标记的对象; - compacting算法
对于一个对象,我们怎么知道他是不是活着呢?我们可以移动它呀。于是我们可以把对象移动至堆得一侧,那么另一侧就是不可操作的对象了; - copying算法
上面说移到另一侧,这个呢直接就有好多堆,从这里移到哪里,然后清理旧的
5.generation算法
简单来说,应该是说分堆,分代,新生成的对象,放在新代中,执行清理,存活的对象扔到旧代中;
就像是你现在混黑社会,外圈是要淘汰的,比如说一分钟淘汰一次,滤掉的就是不合格的,剩下的升级;升级后清理密度变低,这样就节省了时间;
稍微深度一下:
我们在子函数建立一个对象a,当子函数运行完成时,返回时?这个a还存在吗?
对象存不存在不一定,a一定不存在了,首先a是一个引用,他的作用于只在子函数运行时,函数结束,他就不存在了;但是这个对象存不存在就要看垃圾回收何时进行了;
0 0
- Java 垃圾回收 (未完成)
- PHP5.3 的垃圾回收实现原理--同步周期回收机制(未完成版)
- Java GC(垃圾回收)
- Java GC(垃圾回收)
- Java GC(垃圾回收)
- Java GC(垃圾回收)
- Java垃圾回收(GC)
- java垃圾回收(GC)
- Java垃圾回收(整理)
- Java垃圾回收(1)
- Java垃圾回收(2)
- Java垃圾回收(3)
- java中垃圾回收机制(GC)
- java 垃圾回收总结(1)
- java 垃圾回收总结(2)
- Garbage collection--垃圾回收机制(java)
- java 垃圾回收总结(1)
- java gc(垃圾回收系统)详解
- 重写和重载的区别(转)
- hadoop+hive+hbase+zookeeper常见Bug
- PAT 1038 统计同成绩学生
- Java学习内容
- 剑指offer 第二章
- Java 垃圾回收 (未完成)
- ubuntu 14.04.5 第一次使用PostgreSQL如何创建、删除数据库
- MyBatis学习笔记(1)
- Linux环境下一些有用但不常见的命令(一)
- spring 的配置文件applicationContext.xml和beans.xml
- 《牛客网剑指offer27题》输入一个字符串,按字典序打印出该字符串中字符的所有排列
- 博览网C++课程 第五周
- Android中不得不谈的setContentView
- 集合:升级版数组