zoukankan      html  css  js  c++  java
  • Android中Handler.removeCallbacksAndMessages(null)的作用

      众所周知,在Android开发中会大量使用到Handler。但是,由于与activity生命周期不一致,当一个Activity被销毁时,如果Handler对象有Message在排队,则无法释放,进而导致Activity对象无法释放,造成内存溢出。

      解决的方法是在Activity被销毁时,在onDestroy()中调用Handler的removeCallbacksAndMessages()方法。此方法调用时会要求传一个Object参数。先看API:

    Object token)

    API level 1

    Remove any pending posts of callbacks and sent messages whose objtoken . Iftoken is null, all callbacks and messages will be removed.。

        意思就是当传入的参数为null时,则移除所有的messages,这样就有效的避免了由Handler引起的内存溢出

  • 相关阅读:
    Prim+堆优化
    Tarjan缩点+建新图
    CF482A
    CF545C
    CF570B
    Python 入门2 list介绍
    Python 入门1 上传代码
    黑客与画家 第十三章
    黑客与画家 第十一章
    黑客与画家 第五章
  • 原文地址:https://www.cnblogs.com/baiyi168/p/6394628.html
Copyright © 2011-2022 走看看