必威体育Betway必威体育官网
当前位置:首页 > IT技术

弱引用和软引用WeakReference,SoftReference,最简讲解,以及一个应用场景

时间:2019-10-16 23:13:12来源:IT技术作者:seo实验室小编阅读:88次「手机版」
 

weakreference

他讲的很好,但是我看了一下,有些地方讲的不是很清楚,导致我当时困惑了一会。这里简单加点内容

实际上,

Car car = new Car(22000,"silver");
weakreference<Car> weakCar = new WeakReference<Car>(car);

第一行就是new了一个实例,属于强引用,这个还是很好理解的。下面那一行说是弱引用,可实际上又是怎么用的呢?其实他就是让你的强引用变成了弱引用。接下来,如果你再想引用这个car的话。我举个例子。B b = new B(car);这个B类是接受一个car实例的,如果你后面这样写car ==null,这个 new Car(220000,“silver”)是会被回收的。但是如果你不把这个强引用转化为弱引用,那么当car==null的时候,你这个 new Car(220000,“silver”)是不会被回收的,这样就很危险,容易OOM。

概念已经很清晰的讲了,下面再讲一个生动的应用场景,来自某一篇文章的评论。

看到一个Android里面用到,他是在gridview里面加载大量图片,然后每个图片开一个线程进行加载,而且要保证imageView被回收。因为adapter是不太可控的,不知道什么时候imageView被android设为null,而且自己的线程什么时候加载完也不确定。所以线程里面不敢用强应用,就是用的弱应用imageView

而SoftReference

就是和WeakReference有一点点的不同,SoftReference比较大方,在内存快用尽的时候才会回收这个对象。而Weak会很快就回收,强引用是就算内存不足了,也不会回收,这就是他的危险之处。

原文是http://blog.csdn.net/zmx729618/article/details/54093532,值得去看一下。

http://blog.csdn.net/matrix_xu/article/details/8424038还有这个文章也很好。

相关阅读

几种java反编译软件的安装以及使用总结

下面是在网上找的几种反编译软件的安装以及使用:一、JD-JUI官网下载链接:http://jd.benow.ca/下载之后解压,点击“jd-gui.exe”运行:

视频如何剪切,分割视频软件哪个好

如何截取视频片段,多个视频怎么截取片段,我们经常在网上看到关于某个名人的视频剪辑或者是同一类事物的剪辑,我们每个人也都一定会有

软件选择,iDreamPiano、freepiano、EveryonePiano

先说对比结论,EveryonePiano更适合我。  iDreamPiano(idp) freepiano(fp) EveryonePiano(eop) 收费 共享软件,免费版有几个键不发

如何利用软文网络营销解决教育机构推广的问题?

1.制定良好的品牌推广计划。当学生选择教育培训机构时,肯定特别关注教育机构的声誉品牌。然而,许多具有一流条件的教育和培训机构缺

软文推广:一篇优秀的软文,必备三个层面

软文是什么?成功的软文是什么样的?其实和普通的广告一样,软文的根本目的都是让某件事某个事物广为人知,并最终达成销售的目的。就整个

分享到:

栏目导航

推荐阅读

热门阅读