- 博客(3)
- 收藏
- 关注
原创 Android SharedPreferences源码解读
引言 之前面试的时候有被问到过,在之前的工作经历中做过一些什么优化。我回答对SP做过一些优化,减少了一些ANR的产生,具体的做法是,在sp.putXX或getXX之前加一个另外的HashMap来做为缓冲层,但是为什么要这样做,我没有绝对的把握。所以今天特地来解读一下SP的源码,搞清楚中间的原理。 开始分析 SP的初始化 首先我们的SP一般是这么用的 SharedPreferences sharedPreferences = context.getSharedPreferences("spName", Con
2020-06-18 15:33:53 446
原创 强、软、弱、虚引用的区别和记住他们之间区别的方法
文章目录强应用软应用弱应用虚应用记忆方法 网上其实有很多资料了,自己写一下,加深记忆,也写一下怎么记住四类引用的记忆方法。 强应用 无论什么时候gc都不会回收他。 软应用 发生gc时,如果当内存不足时才会被回收。 弱应用 只要gc就会被回收。 虚应用 形同虚设的虚,相当于没有引用,虚引用用的很少很少。 记忆方法 强引用和虚引用好记,一个永不回收,一个形同虚设。关键是软和弱,我的方法是,强弱强弱,强对弱,前者不回收,后者gc就回收。最后剩下与其他三个看起来没啥关系的软引用,在gc时,并且内存不足时被回收。
2020-06-15 15:45:35 371
原创 从GcRoot角度来分析Handler 内存泄漏
从GCRoot角度来分析Handler 内存泄漏 文章目录引言开始分析handler是怎么持有Activity引用的handler是怎么发生内存泄漏的总结解决办法 引言 看了好多博客发现都只说了handler会有内存泄漏风险,原因是handler持有了activity的引用。 但是为什么会发生内存泄漏,好像都没讲清楚。 我研究了一下,说一下我的理解。 开始分析 下面我们就来分析内存泄漏的具体原因,我们分两步来说。 handler是怎么持有Activity引用的 handler是怎么发生内存泄漏的 han
2020-06-15 14:44:54 1895 7
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人