美文网首页
Handler整理

Handler整理

作者: AlanElric | 来源:发表于2018-10-26 17:48 被阅读0次

1. 定义

一套Android消息传递机制


Handler作用流程图.png

2. 基本原理

2.1 相关概念

Handler相关概念图.png

2.2 工作流程

  • 异步通讯准备
  • 消息发送
  • 消息循环
  • 消息处理


    Handler工作流程概述图.png
    Handler工作流程图.png
    Handler工作流程示意图.png

2.3 Thread、Looper和Handler三者的对应关系

线程、循环器和处理者关系图.png

3. 基本使用

3.1 在接收消息的页面创建Handler

private Handler handler = new Handler() {
    @Override
    public void handleMessage(Message msg) {
        super.handleMessage(msg);
        //接收消息并处理
        Log.i("Handler", "----------" + msg.what);
    }
};//未处理内存泄漏问题

3.2 发消息

new Thread(new Runnable() {
    @Override
    public void run() {
        handler.sendEmptyMessage(99);//发消息
    }
}).start();

3.3 内存泄漏解决方案

/**
* 使用弱引用的方式创建静态内部类
*/
private static class MyHandler extends Handler {
    private final WeakReference<Activity> mActivity;

    private MyHandler(Activity activity) { 
        this.mActivity = new WeakReference<>(activity);
    }

    @Override
    public void handleMessage(Message msg) {
        Activity activity = mActivity.get();
        super.handleMessage(msg);
        if (activity != null) {
            Log.i("Handler", "----------" + msg.what);
        }
    }
}

4. 源码分析


参考网站
https://blog.csdn.net/carson_ho/article/details/80175876
https://blog.csdn.net/iispring/article/details/47115879
https://blog.csdn.net/javazejian/article/details/50839443

相关文章

  • Handler整理

    1. 定义 一套Android消息传递机制 2. 基本原理 2.1 相关概念 2.2 工作流程 异步通讯准备 消息...

  • Handler 整理

    非主线程创建Handler时,需要调用 Looper.prepare()。 而主线程能够直接创建是因为 Activ...

  • Handler机制整理

    Handler机制整理目录介绍1.关于handler消息机制图2.关于handler基本介绍3.使用handler...

  • Handler使用的整理

    介绍 Message消息,理解为线程间通讯的数据单元。例如后台线程在处理数据完毕后需要更新UI,则可发送一条包含更...

  • android之Handler整理

    Handler设计初衷:处于性能的考虑,android的UI线程不是操作安全的,这就意味着如果多个线程同时操作UI...

  • Handler相关问题整理

    1、消息机制Hander作用?有哪些要素?流程是怎样的? 作用:跨线程通信。当子线程中进行耗时操作后需要更新UI时...

  • Handler机制与注意

    关于Handler可能很多初学者有疑问,根据个人的经验整理了下面的笔记,希望能给大家有所帮助 什么是Handler...

  • 你真的了解Handler吗?扶我上墙,我来告诉你

    近来许多参加面试的小伙伴大部分都会被问及Handler相关的知识。索性我就来整理一波Handler。 消息循环机制...

  • Android的消息机制(异步处理)

    Android学习整理 - 系列 目录: Android的消息机制(异步处理)组成 Message Handler...

  • android源码--Handler原理

    handler基本原理基本都理解,但是有些细节时间一久仍会有所遗忘,做些整理也还是有必要的。 一、handler原...

网友评论

      本文标题:Handler整理

      本文链接:https://www.haomeiwen.com/subject/dezktqtx.html