Handler源码解析及自己写个handler
2022/2/27 17:21:52
本文主要是介绍Handler源码解析及自己写个handler,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
handler消息机制是安卓各个进程的核心,是程序可以持续运行而不退出的原因所在,但是原理却很简单,我们完全可以自己手写一个。下面我们的思路是,分析子线程中handler用法,分析源码,找出handler源码里的关键类,最后然后手写一个handler。
第一部分:使用handler
Thread thread=new Thread(new Runnable() { @Override public void run() { //准备looper Looper.prepare(); //创建hanlder mHanler=new Handler(Looper.myLooper()); //开启循环 Looper.loop(); } }); thread.start();
分四步,第一步创建looper,第二步创建handler,第三步开启循环,第四步就是发送消息了。
第二部分:源码分析
1.Looper.prepare();干了什么?
private static void prepare(boolean quitAllowed) { //判断当前线程是否已经有looper了,设置过了就不能再设置了 if (sThreadLocal.get() != null) { throw new RuntimeException("Only one Looper may be created per
这篇关于Handler源码解析及自己写个handler的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-11-27消息中间件底层原理资料详解
- 2024-11-27RocketMQ底层原理资料详解:新手入门教程
- 2024-11-27MQ底层原理资料详解:新手入门教程
- 2024-11-27MQ项目开发资料入门教程
- 2024-11-27RocketMQ源码资料详解:新手入门教程
- 2024-11-27本地多文件上传简易教程
- 2024-11-26消息中间件源码剖析教程
- 2024-11-26JAVA语音识别项目资料的收集与应用
- 2024-11-26Java语音识别项目资料:入门级教程与实战指南
- 2024-11-26SpringAI:Java 开发的智能新利器