毕加索的内存管理

Dif*_*ffy 5 android garbage-collection bitmap picasso

我有几个关于毕加索的问题。
1.我在这里看到Picasso使用的内存缓存只是一个LinkedHashMap,它保存了对Bitmap的强引用。它不应该对位图有一个 WeakReference 或 SoftReference 吗?如果不是,那么当内存变低并且 GC 运行时,如何从缓存中清除图像?

2.在后按关闭应用程序并运行 GC 后从应用程序收集的堆转储中,我仍然可以看到Picasso.LruCache其中包含位图的(下面附有图像)的实例。为什么要LruCache保留这个实例?因为它占用了大量的内存。

在此输入图像描述

3.此外,我还可以看到很多 PicassoDrawable 类的实例。GC 运行后也是如此 在此输入图像描述