代码审查中Handler会影响性能

来源:互联网 发布:位图转矢量图软件 编辑:程序博客网 时间:2024/05/21 11:29

使用Handler的时候, handler与类尽量保持弱引用关系,或者使用静态的handler对象避免内存泄漏
解释下:
所谓内存泄漏就是主线程back掉,但是还有引用,而不能释放内存;比如Activity中有一个下载任务,任务还没完成就back,此时Activity的内存是不会被释放的,多次重复这种行为就会导致内存泄漏。
类似如果handler与类保持的是弱引用关系,被java虚拟机释放的机会就会大大增加,减小了内存泄漏的可能。
为啥使用静态的handler对象避免内存泄漏呢?
因为使用static,对象是在ROM中,而不是RAM内存中,自然避免了内存泄漏;new对象是在RAM中。

0 0
原创粉丝点击