亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

Android Handler的詳解及實(shí)例

 更新時(shí)間:2017年07月15日 11:41:33   作者:左手木亽  
這篇文章主要介紹了Android Handler的詳解及實(shí)例的相關(guān)資料,需要的朋友可以參考下

Android Handler的詳解

Handler我們常常用于通知主線程做相對(duì)應(yīng)的操作,但是如果使用不但的話就會(huì)造成內(nèi)存泄露,所以記錄寫正確的Handler寫法。

Handler handler = new Handler() {
    public void handleMessage(Message msg) {
      //do something
    };
  };
handler.sendEmptyMessageDelayed(0, 100 * 1000);

像上面的代碼片段,就會(huì)存在內(nèi)存泄露的風(fēng)險(xiǎn),因?yàn)閔andler占著Acitvity的引用阻止了系統(tǒng)進(jìn)行GC回收操作。

private static class MyHandler extends Handler {
    WeakReference<MainActivity> mWeakReferenceActivity;
    public MyHandler(MainActivity activity) {
      mWeakReferenceActivity = new WeakReference<MainActivity>(activity);
    }

    @Override
    public void handleMessage(Message msg) {
      super.handleMessage(msg);
      if (null != mWeakReferenceActivity) {
        MainActivity _activity = mWeakReferenceActivity.get();
        //_activity.dosomething();
      }
    }
  }

正確的做法是WeakReference存放存入的Activity,這樣在Activity結(jié)束回收的時(shí)候WeakReference不會(huì)阻止系統(tǒng)進(jìn)行回收操作,能有效的避免因?yàn)閔andler引起的內(nèi)存泄露風(fēng)險(xiǎn)。

當(dāng)然你使用handler那種寫法也不是不行的,需要你在結(jié)束Activity的時(shí)候handler.removeCallbacksAndMessages(null);讓系統(tǒng)能夠正常進(jìn)行回收操作。

以上就是關(guān)于Android Handle 用法的詳解,關(guān)于Android 線程的文章,本站還有好多,大家可以參閱,感謝閱讀,希望能幫助到大家,謝謝大家對(duì)本站的支持!

相關(guān)文章

  • Android Studio進(jìn)行APP圖標(biāo)更改的兩種方式總結(jié)

    Android Studio進(jìn)行APP圖標(biāo)更改的兩種方式總結(jié)

    這篇文章主要介紹了Android Studio進(jìn)行APP圖標(biāo)更改的兩種方式總結(jié),文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-06-06
  • Android Parcelable接口使用方法詳解

    Android Parcelable接口使用方法詳解

    這篇文章主要介紹了 Android Parcelable接口使用方法詳解的相關(guān)資料,實(shí)現(xiàn)Parcelable就是為了進(jìn)行序列化,需要的朋友可以參考下
    2017-08-08
  • Android AlertDialog多種創(chuàng)建方式案例詳解

    Android AlertDialog多種創(chuàng)建方式案例詳解

    這篇文章主要介紹了Android AlertDialog多種創(chuàng)建方式案例詳解,本篇文章通過簡要的案例,講解了該項(xiàng)技術(shù)的了解與使用,以下就是詳細(xì)內(nèi)容,需要的朋友可以參考下
    2021-08-08
  • Fultter NestedScrollView實(shí)現(xiàn)吸頂效果以及遇到問題解析

    Fultter NestedScrollView實(shí)現(xiàn)吸頂效果以及遇到問題解析

    這篇文章主要為大家介紹了Fultter NestedScrollView實(shí)現(xiàn)吸頂效果以及遇到問題解析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-09-09
  • Android懸浮窗的實(shí)現(xiàn)步驟

    Android懸浮窗的實(shí)現(xiàn)步驟

    最近想做一個(gè)懸浮窗秒表的功能,所以看下懸浮窗具體的實(shí)現(xiàn)步驟,接下來通過本文給大家介紹Android懸浮窗的實(shí)現(xiàn),需要的朋友可以參考下
    2024-01-01
  • Android開發(fā)之a(chǎn)ndroid_gps定位服務(wù)簡單實(shí)現(xiàn)

    Android開發(fā)之a(chǎn)ndroid_gps定位服務(wù)簡單實(shí)現(xiàn)

    這篇文章主要介紹了Android開發(fā)之a(chǎn)ndroid_gps定位服務(wù)簡單實(shí)現(xiàn) ,非常不錯(cuò),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2019-04-04
  • Android利用Chronometer實(shí)現(xiàn)倒計(jì)時(shí)功能

    Android利用Chronometer實(shí)現(xiàn)倒計(jì)時(shí)功能

    這篇文章主要為大家詳細(xì)介紹了Android利用Chronometer實(shí)現(xiàn)倒計(jì)時(shí)功能,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2016-11-11
  • Android onCreate( )方法詳細(xì)介紹

    Android onCreate( )方法詳細(xì)介紹

    本文主要介紹Android onCreate( )方法,做Android應(yīng)用的朋友對(duì)onCreate()的方法并不陌生,在開發(fā)應(yīng)用的時(shí)候大家應(yīng)該注意什么呢,這里給大家詳細(xì)說明
    2016-09-09
  • Android開發(fā)之Wifi基礎(chǔ)教程

    Android開發(fā)之Wifi基礎(chǔ)教程

    這篇文章主要介紹了Android開發(fā)Wifi基礎(chǔ)教程,實(shí)例分析了Wifi的各種常見基本技巧,具有一定參考借鑒價(jià)值,需要的朋友可以參考下
    2015-02-02
  • Android Studio實(shí)現(xiàn)簡易計(jì)算器

    Android Studio實(shí)現(xiàn)簡易計(jì)算器

    這篇文章主要為大家詳細(xì)介紹了Android Studio實(shí)現(xiàn)簡易計(jì)算器,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2018-07-07

最新評(píng)論