b2科目四模拟试题多少题驾考考爆了怎么补救
b2科目四模拟试题多少题 驾考考爆了怎么补救

softreference_referencequeue作用_reference是什么意思

电脑杂谈  发布时间:2017-05-28 01:05:05  来源:网络整理

referencequeue作用_softreference_reference是什么意思

Java 和 Android 内存优化的两个类:SoftReference 和 WeakReference

如果你想写一个 Java 程序,观察某对象什么时候会被垃圾收集的执行绪清除,你必须要用一个 reference 记住此对象,以便随时观察,但是却因此造成此对象的 reference 数目一直无法为零, 使得对象无法被清除。softreference

view sourceprint?

1 java.lang.ref.WeakReference

不过,现在有了 Weak Reference 之后,这就可以迎刃而解了。如果你希望能随时取得某对象的信息,但又不想影响此对象的垃圾收集,那么你应该用 Weak Reference 来记住此对象,而不是用一般的 reference。

view sourceprint?

01 A obj = new A();

02

03 WeakReference wr = new WeakReference(obj);

04

05 obj = null;

06

07 //等待一段时间,obj对象就会被垃圾回收

08 ...

09

10 if (wr.get()==null) {

11 System.out.println("obj 已经被清除了 ");

12 } else {

13 System.out.println("obj 尚未被清除,其信息是 "obj.toString());

14 }

15 ...

在此例中,透过 get() 可以取得此 Reference 的所指到的对象,如果传出为 null 的话,代表此对象已经被清除。

这类的技巧,在设计 Optimizer 或 Debugger 这类的程序时常会用到,因为这类程序需要取得某对象的信息,但是不可以 影响此对象的垃圾收集。softreference

java.lang.ref.SoftReference

Soft Reference 虽然和 Weak Reference 很类,但是用途却不同。 被 Soft Reference 指到的对象,即使没有任何 Direct Reference,也不会被清除。一直要到 JVM 内存不足时且 没有 Direct Reference 时才会清除,SoftReference 是用来设计 object-cache 之用的。如此一来 SoftReference 不但可以把对象 cache 起来,也不会造成内存不足的错误 (OutOfMemoryError)。我觉得 Soft Reference 也适合拿来实作 pooling 的技巧。

view sourceprint?

01 A obj = new A();

02

03 SoftRefenrence sr = new SoftReference(obj);

04

05 引用时

06

07 if(sr!=null){

08

09 obj = sr.get();

10

11 }else{

12

13 obj = new A();

14

softreference_reference是什么意思_referencequeue作用

15 sr = new SoftReference(obj);

16

17 }

在Java中内存管理,引用分为四大类:强引用HardReference、弱引用WeakReference、软引用SoftReference和虚引用PhantomReference。

它们的区别也很明显,HardReference对象是即使虚拟机内存吃紧抛出OOM,也不会导致这一引用的对象被回收;而WeakReference等更适合于一些数量不多,但体积稍微庞大的对象,在这四个引用中,它是最容易被垃圾回收的;而我们对于显示类Android Market中每个应用的AppIcon时可以考虑使用SoftReference来解决内存不至于快速回收,同时当内存短缺面临JavaVM崩溃抛出OOM前时,软引用将会强制回收内存,最后的虚引用一般没有实际意义,仅仅观察GC的活动状态,对于测试比较实用同时必须和ReferenceQueue一起使用。


本文来自电脑杂谈,转载请注明本文网址:
http://www.pc-fly.com/a/ruanjian/article-49625-1.html

相关阅读
    发表评论  请自觉遵守互联网相关的政策法规,严禁发布、暴力、反动的言论

    • 早川美咲
      早川美咲

      南海舰队就地演习

    热点图片
    拼命载入中...