内存泄漏是什么鬼?
1、内存泄漏是什么鬼?
当某些对象不再被程序所使用,但是这些对象仍然被某些对象所引用着,进而导致垃圾收集器不能及时释放它们。 (无效的对象没有及时回收,导致内存不够用,致使程序 出错) 来个图片了解一下
2、知道为什么导致内存泄露那就很好办了,都是跟对象有关系(就是new出来的 不要想着他会跟你结婚)
主要有以下几方面吧:平时注意一下 完全可以杜绝的
Context
内部类(handler等)
Cursor
Adapter
Bitmap
3、Context的溢出
来个图让大家分分钟理解一下:
4、看到这个图在稍加思索会不会觉得我们的工具类 貌似好多都持有了activity,而且工具类还是static类型。 在细琢磨一下呢。是不是activity的上下文都可以被application替代呢?
经验之谈:dialog ,fragment,inflate和启动activity 的上下文都是activity的,其他的都都可以被application替代。比如数据库的 服务的 广播的。都不要再用activity了吧。当然也要酌情处理。
举个栗子(太多了根本举不过来)
1.获取系统的服务
5、其他的就是 千万不要在 static的工具类里面 添加activity上下文
内部类的种种问题(感觉这个比较多一些呢)
声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
阅读量:43
阅读量:126
阅读量:162
阅读量:97
阅读量:186