Android消息机制

概述

Android的消息机制主要是指Handler运行机制,Handler是作为Android开发者必知必会的一个知识点,也是初中高级面试都会被问到的一个知识点。

基本使用

1、在主线程中创建使用handler

val handler = object : Handler(Looper.getMainLooper()) {
     override fun handleMessage(msg: Message) {
         super.handleMessage(msg)
     }
 }
 handler.sendMessage(handler.obtainMessage(1))

2、在子线程中创建handler

Thread(){
   Looper.prepare()
   val handler = object: Handler(){
       override fun handleMessage(msg: Message) {
           super.handleMessage(msg)
       }
   }
   Looper.loop()
}.start()

源码分析

相信大家看完了Handler的使用之后会存在很多的疑问,包括我很早之前也有这个疑问,今天就从源码的角度来分析并解析心中存在的疑问。

先提出来我们想要探究的问题

  • 为什么主线程创建的时候不需要使用Looper.perpare()Looper.loop()方法
  • 线程和handler以及Looper是什么样的对应关系呢?一个线程能否创建存在多个Looper对象?
  • 主线程中使用Handler进行倒计时是否可靠?

好了,接下来上主菜

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值