关闭

Android消息机制概述 Handler

标签: android
596人阅读 评论(0) 收藏 举报
分类:

Android消息机制概述
Android 的消息机制主要是指 Handler 的运行机制, Handler 的运行需要MessageQueueLooper 来支撑。MessageQueue是消息队列,就是内部存储了一组消息,以队列的形式对外提供插入和删除的工作。是采用单链表的数据结构来存储消息列表。Looper是消息循环,由于MessageQueue不能处理消息,然而Looper弥补了这一个功能,Looper以无限循环的形式去查找是否有新的消息,如果有的话就处理消息,否则就一直等待着。Looper 有一个特殊的概念,就是ThreadLocal , 可以说是线程池,它的作用是可以在每个线程中存储数据。Handler 创建的时候会采用当前线程的Looper 来构造消息循环系统。这里就使用到了ThreadLocal ,可以在不同的线程中互不干扰的存储并提供数据,通过ThreadLocal 可以轻松获取每个线程的Looper 。线程默认是没有Looper 的,如果需要使用Handler 就必须为线程创建Looper . 然而在主线程,也叫UI 线程,它就是ActivityThread, 在被创建时就会初始化Looper ,这也是在主线程中默认可以使用Handler 的原因。

1
0
查看评论
发表评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场

Handler消息处理机制原理

Android程序启动后会起一个进程,所有的组件都在这个进程里面运行。开始这个进程只包含一个线程,叫做UI主线程,负责处理UI界面的显示更新。对于一些费时的操作(超过5S会卡顿)需要单独启动一个子线程...
  • u013248948
  • u013248948
  • 2015-11-24 00:29
  • 1104

Android异步消息处理机制完全解析,带你从源码的角度彻底理解

我们都知道,Android UI是线程不安全的,如果在子线程中尝试进行UI操作,程序就有可能会崩溃。相信大家在日常的工作当中都会经常遇到这个问题,解决的方案应该也是早已烂熟于心,即创建一个Messag...
  • sinyu890807
  • sinyu890807
  • 2013-08-22 14:02
  • 85234

Android 异步消息处理机制 让你深入理解 Looper、Handler、Message三者关系

转载请标明出处:http://blog.csdn.net/lmj623565791/article/details/38377229 ,本文出自【张鸿洋的博客】很多人面试肯定都被问到过,请问Andro...
  • lmj623565791
  • lmj623565791
  • 2014-08-07 09:17
  • 195254

android消息机制之二--Handler

Handler扮演者向MQ上添加消息和处理消息的角色,它通知MQ它要执行一个任务(sendMessage),并且loop到自己的时候执行该任务,整个过程是异步的。
  • ITJackR
  • ITJackR
  • 2016-03-03 13:24
  • 108

Android消息机制Handler的实现原理解析

[ Android消息机制Handler的实现原理解析]Android的主线程为什么可以一直存在? 线程是一个动态执行的过程,从产生到死亡包括五个状态:新建、就绪、运行、死亡和堵塞。只要线程没有执...
  • lyl278401555
  • lyl278401555
  • 2016-07-05 10:30
  • 2003

Android Handler 消息机制原理解析

前言 做过 Android 开发的童鞋都知道,不能在非主线程修改 UI 控件,因为 Android 规定只能在主线程中访问 UI ,如果在子线程中访问 UI ,那么程序就会抛出异常 andro...
  • will_ls
  • will_ls
  • 2018-01-12 10:08
  • 177

Android消息机制作用和原理(图+源码):Handler、Looper、MessageQueue

一张简单的图解释消息机制原理,以下就懂!结合源码分析消息机制原理和使用,逐个介绍消息机制的组成成员Handler、Looper、ThreadLocal、MessageQueue、Message。
  • cheneasternsun
  • cheneasternsun
  • 2018-01-06 23:04
  • 26

Android消息机制,你真的了解Handler吗?

今日快讯 近日,工业和信息化部公布了第三季度对55家手机应用商店中应用软件的技术检测结果:发现违规软件31款,涉及违规收集使用用户个人信息、恶意“吸费”、强行捆绑推广其他应用软件等问题。...
  • c10WTiybQ1Ye3
  • c10WTiybQ1Ye3
  • 2017-11-17 00:00
  • 104

android消息机制 - Handler、Looper原理解析

android的消息机制就是指Handler、MessageQueue和Looper的工作过程。需要传递消息时,由Handler会调用MessageQueue的enqueueMessage方法将消息放...
  • whsdu929
  • whsdu929
  • 2016-09-09 15:24
  • 268

【Android】源码分析 - Handler消息机制再梳理

前言多线程的消息传递处理,从初学Android时的Handler,懵懵懂懂地照猫画虎,到后来一头雾水的疑惑它为什么这么复杂,再到熟悉之后的叹为观止,一步步地都是自己踩过的足迹,都是成长啊哈哈哈。虽然离...
  • u010983881
  • u010983881
  • 2017-08-04 14:09
  • 791
    个人资料
    • 访问:86852次
    • 积分:1450
    • 等级:
    • 排名:千里之外
    • 原创:41篇
    • 转载:3篇
    • 译文:3篇
    • 评论:23条
    文章分类
    最新评论