Looper 【监控保安】:
有pipe机制实现 : 有事唤醒【awake】,无事睡觉【wait】;
MessageQueue 【管理数据的仓库管理员】:
内部是一链表实现;
Handler 【真正做事的员工】:
在UI住线程去处理问题;
Looper 有事情,就回去 sendmessage,将 messageQueue ...
分类:
其他好文 时间:
2015-06-14 11:00:08
阅读次数:
119
一、用法。Looper为了应付新闻周期,在创建过程中初始化MessageQueue。Handler在一个消息到当前线程的其他线程MessageQueue用于存储所述消息Looper其中线程创建的对象。Handler的handleMessage方法就在哪个线程运行在创建activity时,androi...
分类:
其他好文 时间:
2015-06-11 16:10:38
阅读次数:
90
1. View的点击事件分发。2. Thread、ThreadPool 与 Handler、MessageQueue、Looper的阐述,以及它们之间的关系;自定义的Thread能否实现Looper等,像UI主线程一样。3. 对Fragment的理解。4. Service与Activity之间的如何...
分类:
移动开发 时间:
2015-06-09 23:28:50
阅读次数:
164
源:Android应用运行过程首先,ActivityThread从main()函数开始执行,调用prepareMainLooper()为UI线程创建一个消息队列(MessageQueue)。 然后创建一个ActivityThread对象,在ActivityThread的初始化代码中会创建一个H(Ha...
分类:
移动开发 时间:
2015-06-06 12:02:33
阅读次数:
156
基于以上几点也得拿出来分析分析,该篇博客从实例到源码完全进行了剖析(包含Handler、Message、MessageQueue、Looper、HandlerThread等源码),不同于网上很多只是分析局部的博客。...
分类:
移动开发 时间:
2015-05-25 11:32:25
阅读次数:
239
Handler创建,必须有个一个Looper,主线程自己创建了。其他线程需要自己创建,默认是没有的。创建方法 1. 这种方法是先创建一个系统定义好的HandlerThread,这个是跑在非UI线程中的,已经创建好了looper,直接用就可以了.创建handler有多个构造函数,具体看源码 ...
分类:
移动开发 时间:
2015-05-19 22:13:27
阅读次数:
184
这里先简单的写一个例子,后续会更新一些概念性的东西在里面。因为现在还不太理解这个。
1、只是听讲:handler是负责消息传输,looper负责消息回调,messagequeue是一个存储消息的容器。
2、在子线程中,要想实现消息的传送,需要获得looper对象进行回调。
package com.example.handledemos;
import android.app.Act...
分类:
其他好文 时间:
2015-05-18 19:00:15
阅读次数:
171
Handler,Looper,MessageQueue,Message总结...
分类:
其他好文 时间:
2015-05-14 22:11:40
阅读次数:
225
Handler+Runnable模式我们先看一个并不是异步线程加载的例子,使用 Handler+Runnable模式。这里为何不是新开线程的原因请参看这篇文章:Android Runnable 运行在那个线程 这里的代码其实是在UI 主线程中下载图片的,而不是新开线程。我们运行下面代码时,会发现他其...
分类:
编程语言 时间:
2015-05-14 16:18:59
阅读次数:
238
在线程内部有一个或者多个Hadnler对象,外部程序通过该Handler对象向线程发送异步消息,消息经由Hadnler传递到MessageQueue对象中,线程内部只能包含一个MessageQueue对象,主线程执行函数中从MessageQueue中读取消息,并回调Handler对象中的函数handleMessage()。
为更好地理解Handler的工作原理,先介绍有Handler一起工作的几...
分类:
其他好文 时间:
2015-05-13 22:04:15
阅读次数:
284