内存泄漏是什么鬼?

2025-10-02 16:39:16

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。
猜你喜欢