必威体育Betway必威体育官网
当前位置:首页 > IT技术

为什么要用Handler

时间:2019-10-06 16:43:23来源:IT技术作者:seo实验室小编阅读:52次「手机版」
 

handler

一、什么是handler?

注:线程分为主线程(主线程又叫UI线程,只能有一个主线程)和子线程(可以有多个)Handler只能在主线程里运行

handler是Android给我们提供用来更新UI的一套机制,也是一套消息处理机制,我们可以发消息,也可以通过它 处理消息。

 二、为什么要用Handle?

因为android在设计的时候就封装了一套消息创建、传递、处理。如果不遵循就不能更新UI信息,就会报出异常(所谓的异步消息处理)

三、 Handler的工作原理?

Handler的工作原理是Handler发送消息给messageQuee给形成Handle MessageQuee再由Handle MessageQuee传递消息给Looper(一个对象)最后由Looper递交给 Handler处理(一个Handler里面必须要有一个Looper)

Handler、Looper、MessageQueen、Message的关系

Message: Handler接收和处理的消息对象

MessageQueen: 存储消息对象的队列

Looper: 负责读取MessageQueen中的消息,读到消息之后就把消息交给Handler去处理。

Handler:发送消息和处理消息

四、什么是Message Quee

Message Quee就是存储消息对象的队列(消息来自于Message)

五、Handler怎么用

Handler主要有发送消息和处理消息两大作用

Handler发送消息给Message而Message再由 MessageQueen进行消息的存储,接着由Looper负责读取 MessageQueen中的消息,最后由Handler处理消息。

总结:

Looper的作用:每个线程只有一个Looper,他负责管理Messagequeue,会不断的从MessageQueue取出消息,分发给对象 的handler

MessageQueue的作用:由Looper管理,而MessageQueue则采用先进的方法来管理Message!

Handler的作用:它把消息发送给Looper管理的MessageQueue,并负责处理Looper分发给他的消息。

相关阅读

Android多线程:HandlerThread详细使用手册

前言 多线程的应用在Android开发中是非常常见的,常用方法主要有:继承Thread类 实现Runnable接口 Handler AsyncTask HandlerThread

看springmvc适配器模式---HandlerAdapter

适配器模式 就是你有一个类接口,但是这个接口不太符合你的预期,如果要用他就需要在他的源码上进行一些修改,这时你可以做一个适配器

Handler内存泄露原理及完美自定义handler解决方案

发现handler有内存泄漏,但是度娘的那些静态类自定义handler并没有解决问题,并且那种方式局限性很严重。然后我用现在的这种方式完全

Handle的原理(Looper、Handler、Message三者关系)

转载请注明出处:http://blog.csdn.net/lowprofile_coding/article/details/72580044 介绍 前面的内容对Handler做了介绍,也讲解

说说Handler的一些使用姿势

Handler大家应该都很熟悉了,毕竟只要是涉及到Android里面线程间的通讯,总会看到它的身影。我平时也经常使用Handler,今天整理笔记,就

分享到:

栏目导航

推荐阅读

热门阅读