国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 系統(tǒng) > Android > 正文

Android HandlerThread使用方法詳解

2020-02-21 17:22:08
字體:
供稿:網(wǎng)友
Handlerthread是Android API提供的一個(gè)方便的類,今天武林技術(shù)頻道告訴大家可以快速創(chuàng)建活套線程,那么Android HandlerThread使用方法詳解大家了解多少呢?一起來學(xué)習(xí)吧!

Android HandlerThread使用方法詳解

HandlerThread 繼承自Thread,內(nèi)部封裝了Looper。

首先Handler和HandlerThread的主要區(qū)別是:Handler與Activity在同一個(gè)線程中,HandlerThread與Activity不在同一個(gè)線程,而是別外新的線程中(Handler中不能做耗時(shí)的操作)。

用法:

import android.app.Activity;  import android.os.Bundle;  import android.os.Handler;  import android.os.Handler.Callback;  import android.os.HandlerThread;  import android.os.Message;      public class MainActivity extends Activity {    HandlerThread handlerThread = new HandlerThread("test");    Handler handler;        @Override    protected void onCreate(Bundle savedInstanceState) {      super.onCreate(savedInstanceState);      setContentView(R.layout.activity_main);      System.out.println("cur_id="+Thread.currentThread().getId());            handlerThread.start();      System.out.println("handlerThread.id=" + handlerThread.getId());      //post(runnable),只是直接運(yùn)行了run(),run()內(nèi)ThreadId與UIThread是一樣的  //   handler = new Handler();       //post(runnable),將runnable運(yùn)行在handlerThread中,這是非UIThread的      handler = new Handler(handlerThread.getLooper(), new Callback() {                @Override        public boolean handleMessage(Message msg) {          System.out.println("receive message.whatA=" + msg.what);          if (msg.what == 1) {            return true;//不再向外層傳遞          } else {            return false; //外層的handleMessage() 繼續(xù)執(zhí)行          }                  }      }) {        @Override        public void handleMessage(Message msg) {          // TODO Auto-generated method stub          super.handleMessage(msg);          System.out.println("receive message.whatB=" + msg.what);        }      };      handler.post(new Runnable() {                @Override        public void run() {          System.out.println("handler_post_cur_id="+Thread.currentThread().getId());          handler.sendEmptyMessage(1);          handler.sendEmptyMessage(2);        }      });          }    }  

運(yùn)行結(jié)果:

01-23 07:12:31.590: I/System.out(12386): cur_id=1  01-23 07:12:31.590: I/System.out(12386): handlerThread.id=1866  01-23 07:12:31.590: I/System.out(12386): handler_post_cur_id=1866  01-23 07:12:31.600: I/System.out(12386): receive message.whatA=1  01-23 07:12:31.600: I/System.out(12386): receive message.whatA=2  01-23 07:12:31.600: I/System.out(12386): receive message.whatB=2  

以上就是關(guān)于武林技術(shù)頻道小編介紹的Android HandlerThread使用方法詳解,更多的技術(shù)知識(shí)就在js.Vevb.com,相信這里的內(nèi)容對(duì)你有著極大的幫助。

發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 海盐县| 无为县| 安吉县| 普兰店市| 新泰市| 炎陵县| 当雄县| 定边县| 仁布县| 桃江县| 来宾市| 金华市| 华阴市| 江城| 雷州市| 台湾省| 武安市| 睢宁县| 讷河市| 达尔| 洮南市| 布拖县| 彰武县| 柘荣县| 介休市| 海阳市| 黔西县| 江华| 广安市| 环江| 庆云县| 襄垣县| 成安县| 冕宁县| 奉化市| 怀宁县| 西乌| 和静县| 将乐县| 伊宁县| 宝清县|