关于GC的一些总结

来源:互联网 发布:贴吧娘贴吧君分手知乎 编辑:程序博客网 时间:2024/06/06 08:50

关于java垃圾回收机制:

java提供了一个系统级的线程——垃圾回收器线程,用来对每一个分配出去的内存空间进行跟踪,当JVM空闲时,自动回收每块可能被回收的内存,GC是自动的不能被强制执行,程序员最多只能用system.gc()建议执行垃圾回收器回收内存,但具体的回收时间,是不可知的;


当对象的引用变量被赋值为null,可能被当成垃圾;


GC只能释放堆上的内存,而栈上的内存,必须用finalize()释放,局部变量存放在栈上,由finalize()释放;


垃圾回收线程再JVM中优先级较低:当程序运行时,至少会有两个线程开启,分别是主线程和垃圾回收线程,垃圾回收线程较低;


GC会对我们使用的对象进行监视,当一个对象长时间不使用,GC会不定时的对对象进行回收,释放内存空间,程序员不可以控制GC,但可以调用system.gc()方法建议GC进行回收,但GC不一定会执行;


进入DEAD状态的线程,GC不会回收;

***关于线程的几种状态:

 

原创粉丝点击