网络编程

2 、Handler消息机制异步

.MessageQueueide

MessageQueue是消息队列的意思,它主要用来存放经过 Handler发送的消息。经过 HandlerMessageQueue发送的消息会存在中等待处理。它是一个按 Message的when排序的优先级队列。(when:表明着被处理的时间工具

.Looperoop

LooperMessageQueue是每一个线程中的的管家。调用 Looper的loop(方法后,就会进入到一个无线循环中而后一发现 MessageQueue中存在一条消息,就会将它取出,并传递到 HandlerHandle的方法中
Handler线程

Handler主要用于发送消息和处理消息通常使用对象的 sendMessage(方法发送消息,消息通过一系列处理后,最终会传递到对象

HandlerhandlerMessage方法中发送即时消息: sendMessageMessage msg排序

发送延时消息: sendMessageDelayedMessage msg. long time)处理消息 handleMessageMessage msg回调方法移除还未处理的消息: removeMessagesint what)队列

二、AsyncTaskrem

为了方便子线程中对U进行操做, Android提供了一些好用的工具类到主线程,它的原理也是基于异步消息处理机制的AsyncTaskAsyncTask就是其中之一。借助,能够十分简单地从子线程切换
AsyncTask是一个抽象类,它有三个泛型参数,分别以下所示:
Params:执行异步任务时须要传入的参数,用于后合任务中使用
Progress后台任务执行时,若是须要在界面上显示当前的进度,则使用该参数做为进度单位
Result:当任务执行完毕后,若是须要对结果进行返回时,则使用该参数做为返回值类型消息队列

相关文章
相关标签/搜索