402
查看handler的源代码
handler
0
←
handler
跳转至:
导航
、
搜索
因为以下原因,你没有权限编辑本页:
你被禁止执行你刚才请求的操作。
您可以查看并复制此页面的源代码:
=介绍= 原来这里放的一片文章,啰里啰唆半天讲不清楚,放到讨论里面去了。 Handler 是用来从一个线程向另一个线程发消息的,在Android系统中不管构架还是应用程序中都有广泛的应用。例如[[Android网络管理]]。 new Handler的时候,本线程必须调用过Looper.prepare(); 且本线程必须以Looper.loop()结尾, 即使本进程别的线程调用了Looper.loop()也是不行的。 也可以在当前线程中构造让别的线程处理的Handler. HandlerThread 是专门设计用来处理handle的一个线程类。 例如,WifiService.java中: <source lang="java"> HandlerThread wifiThread = new HandlerThread("WifiService"); wifiThread.start(); mWifiHandler = new WifiHandler(wifiThread.getLooper()); </source> =例子= <source lang="java"> //YdnHandler import android.os.*; import android.content.Context; import android.os.ServiceManager; import android.net.*; import android.os.storage.IMountService; public class YdnHandler { public static void main(String args[]) { YdnThread jthread = new YdnThread(); jthread.start(); //YdnThread2 jthread2 = new YdnThread2(); //如果这个线程里面有Looper.prepare() Looper.loop()也是不行的。 //jthread2.start(); System.out.println("YdnHandler!!!!!!!!!"); try { Thread.sleep(50); } catch (InterruptedException e) { // TODO Auto-generated catch block e.printStackTrace(); } Handler handle = jthread.get_handle(); System.out.println("1"); int i = 0; while(true) { i += 2; System.out.println(" " + i ); Message msg = handle.obtainMessage(); msg.arg1 = i; msg.arg2 = i+1; msg.sendToTarget(); try { Thread.sleep(100); } catch (InterruptedException e) { // TODO Auto-generated catch block e.printStackTrace(); } if(i>100) { System.exit(0); } } } } class YdnThread extends Thread { private Handler m_handle; public Handler get_handle() { return m_handle; } public void run() { System.out.println("222"); Looper.prepare(); m_handle = new Handler() { public void handleMessage(Message msg) { System.out.println("handleMessage"); } }; System.out.println("333"); Looper.loop(); } } class YdnThread2 extends Thread { public void run() { Looper.prepare(); Looper.loop(); System.exit(0); } } </source> [[category:android开发]] [[category:技术文章]]
返回
handler
。
导航菜单
个人工具
   
个人维基
注册
登录
名字空间
页面
变换
查看
阅读
查看源代码
统计
查看历史
操作
搜索
导航
首页
最近更改
随机页面
工具箱
所有页面
文件列表
特殊页面