android之HandlerThread类的实现
package com.ghg.HandlerThread;import android.app.Activity;import android.content.Intent;import android.os.Bundle;import android.os.Handler;import android.os.HandlerThread;import android.os.Looper;import android.os.Message;/** * 在主线程main中创建handler对象,创建消息,并用handler向工作线程发送消息,在工作线程中处理消息; * 应用环境:比如下载; * @author gaohong * */public class Day1304_HandlerThreadActivity extends Activity {HandlerThread thread; /** Called when the activity is first created. */ @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); //创建工作线程并启动(工作线程带消息队列) thread=new HandlerThread("workThread"); thread.start(); Looper looper=thread.getLooper(); //创建Handler对象并与工作线程的消息队列关联 Handler handler=new Handler(looper){ @Override public void handleMessage(Message msg) { // TODO Auto-generated method stub System.out.println("在"+Thread.currentThread().getName()+"中处理消息"); System.out.println("msg.obj="+msg.obj); } }; //创建Message对象 Message msg=Message.obtain(); msg.obj="在"+Thread.currentThread().getName()+"线程中发送消息"; handler.sendMessage(msg); } @Overrideprotected void onDestroy() {// TODO Auto-generated method stubsuper.onDestroy();thread.quit();}}上面类是HandlerThread类的精简版,模仿HandlerThread类的实现,关键是为了理解HandlerThread类的工作原理;