Android - 线程的理解

示意图

线程:
  • 线程是个单一执行序列。单个线程中的代码会逐步执行到结束。
主线程:
  • 所有Android应用的运行都是从主线程开始的。
  • 主线程不是线程那样的预定执行序列。相反,它处于一个无限循环的运行状态,等着用户或系统触发事件。一旦有事件触发,主线程便执行代码做出响应。
  • 主线程运行着所有更新UI的代码,其中包括响应activity的启动、按钮的点击等不同UI相关事件的代码。
举例:

假如你是上班一族,早9晚12,每天刷牙洗脸上班回家睡觉,都是你的任务(主线程)。

今天下午9点你突然想在12点下班前打开家里空调,而此时你还在加班回不去,这时候你让你老婆打开空调,你老婆收到任务(开子线程),帮你打开了空调,这件事情就结束了(单一执行直到结束)。你回到家就能享受凉爽了。

第二天你去上班,原本你一天工作量为10,今天老板突然说赶进度,给你分配20个任务,这时候你扛不住了,猝死!这就是阻塞(ANR)!如果说再给你找个小弟(开线程,如网络请求),做其中的一部分,你就不会猝死了。

例子不太好,毕竟你没有老婆。仅供参考,是我自己的理解,欢迎提出意见。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值