1.Handler消息传递机制
通过结合Handler与Message可简单有效地实现线程之间的通信。
传递消息的步骤主要有4步:
- 在主线程构造一个Handler对象,并启动分线程
关键代码
Handler handler=new Handler();
{
public void handleMessage(android.os.Message msg)
{
if(msg.what==0x123){tv.setText("");}
}
}`
.
- 在分线程中构造一个Message对象的消息包
Message是多线程通信中存放消息的包裹,作用类似有Intent机制的Bundle工具。实例可通过的obtain方法 获得,也可以通过Handler对象的obtianMessage方法获得。
public static Message obtian(Handler h,int what,int arg1,int arg2,Object obj)
参数说明
- what:整形的消息标识,用于标识本次消息的唯一编号。
- arg1:整型数,可存放消息的处理结果。
- arg2:整形数,可存放消息的处理代码。
- obj:Object类型,可存放返回消息的数据结构。
- replyTo:Message类型,回应信使,在挂进程通信使用。
3.在分线程中通过Handler对象将Message消息发出去