面试中经常会有人问到图片缓冲中对软引用和弱引用的区别。
之前在相关文档中有看到说 Android 中对软引用及弱引用不再做区分,即软引用的对象在 gc 时会被回收掉。
之前对这段话一直没做验证,今天得空验证了下,果真如此,写下篇幅以作记录。
验证程序中分配了一个 10*1024*1024 大小的字节数组,三个Activity 分别对该数组保持了强引用,软引用,弱引用;
如下图:对于强引用,触发gc时内存未得到释放;对于软引用和弱引用,触发gc时,字节数组所占用的内存被释放掉。
面试中经常会有人问到图片缓冲中对软引用和弱引用的区别。
之前在相关文档中有看到说 Android 中对软引用及弱引用不再做区分,即软引用的对象在 gc 时会被回收掉。
之前对这段话一直没做验证,今天得空验证了下,果真如此,写下篇幅以作记录。
验证程序中分配了一个 10*1024*1024 大小的字节数组,三个Activity 分别对该数组保持了强引用,软引用,弱引用;
如下图:对于强引用,触发gc时内存未得到释放;对于软引用和弱引用,触发gc时,字节数组所占用的内存被释放掉。