Android进阶知识点(AsyncTask,Looper、Handler和HandlerThread)

 

使用AsyncTask在后台线程上运行代码

Android禁止任何主线程网络连接行为。

线程是个单一执行序列。单个线程中代码会逐步执行。Android应用都是从主线程(UI线程)开始的,然而,主线程不是线程那样的预定执行序列。相反,它处于一个无限循环的运行状态,等待着用户或系统触发事件的发生。

AsyncTask工具类

Gson能自动把数据映射为Java对象。

 

LooperHandlerHandlerThread

消息循环由线程和looper组成。Looper对象管理着线程的消息队列。主线程就是个消息循环,因此也拥有looperlooper(准备looper时,使用HandlerThread类)不断从消息队列中抓取消息,然后完成消息指定的任务。

消息是Message类的一个实例,它有好几个实例变量,其中有三个需要在是实现时定义。(1What:用户定义的int型消息代码,用来描述信息。

(2)obj:随消息发送的用户指定对象。

(3)target:处理消息的Handler

Message的目标是Handler类的一个实例。Handler可看做message handler的简称。创建Message时,它会自动与一个Handler相关联。Message待处理时,Handler对象负责触发消息处理事件。

Handler还是创建和发布Message的接口。


 

Looper拥有Message收件箱,所以Message必须在Looper上发布和处理。一个Handler仅与一个Looper关联,一个Message也仅与一个目标Handler相关联。Looper拥有整个Message队列。多个Message可以引用同一目标Handler

多个Handler也可与一个Looper相关联。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值