继续浏览精彩内容
慕课网APP
程序员的梦工厂
打开
继续
感谢您的支持,我会继续努力的
赞赏金额会直接到老师账户
将二维码发送给自己后长按识别
微信支付
支付宝支付

Android线程通信

Amy_木婉清
关注TA
已关注
手记 28
粉丝 2
获赞 22

进程(Process)通常表现为一个正在运行的应用程序实体,在默认情况下,每个正在运行的应用程序有且只有1个进程
线程(Thread)是计算机进行调度的基本单位,表现为进程中某个单一顺序的控制流,它可以被认为是一个轻量级的进程(LightWeightProcess)
同一进程中可以有若干个线程
ANR:应用程序无响应
在子线程中更新UI的方法:
Activity类:

public void RunOnUiThread(Runnable action)

View类:

public boolean post(Runnable action)
//方法二
public boolean postDelayed(Runnable action,long dealyMillis)

Android系统使用消息机制完成线程间的通信
Message
(1)setData()方法:封装Bundle类型数据
接收方 getData()方法:获取该Bundle对象
arg1属性:int类型,用于在Bundle中封装int型变量
agr2:int类型,作用与arg2相同
what属性:int类型,用于在message中封装int型变量,表示消息的标识符
Handler对象是消息的发送者与处理者
方法:

public final boolean sendMessage(Message msg)
//方法二
public void handleMessage(Message msg)

开启子线程:

new Thread(){
     run{
  };
}.start();

Message详解:
Message类中的obtain()系列方法
尽量不要在Message中封装数据

打开App,阅读手记
0人推荐
发表评论
随时随地看视频慕课网APP