千磨万击还坚劲,任尔东西南北风。这篇文章主要讲述Android学习笔记(十四) Handler理论补充相关的知识,希望能为你提供帮助。
一、如何下载android源码在SDK Manager中选中Sources for Android SDK。
二、ThreadLocal初步介绍【Android学习笔记(十四) Handler理论补充】1)执行ThreadLocal对象(static final ThreadLocal sThreadLocal)的set(Object obj)方法,将会向存入一个以当前线程为键的键值对。
2)执行ThreadLocal对象的get()方法,将会根据当前线程对象为键,取出与之对应的值。
在之前提到的Looper方法调用中:
执行Looper.prepare时,系统会生成一个Looper对象,然后和当前线程通过ThreadLocal存储(set)起来。生成Handler对象时,又根据线程名将Looper对象取(get)出来,然后赋值给Handler对象的mLooper成员变量。因此Looper和Handler的关系是通过ThreadLocal联系起来的。
生成Looper对象时会生成一个与之相对应的MessageQueue对象。之后生成Handler对象时,将Looper对象和MessageQueue对象都赋值给Looper的成员变量。
推荐阅读
- Android常用的快速开发框架
- Android工具(LeakCanary—内存泄露检测神器)
- Android应用性能优化系列视图篇——隐藏在资源图片中的内存杀手
- 深入解析Android中Handler消息机制
- Android应用程序如何使用Internet资源()
- Android应用程序的结构和解析
- Android源代码下载 “Gerrit下载源代码”
- Android开发(《Gradle Recipes for Android》阅读笔记(翻译)3.3——整合resource文件)
- Android中的WeakReference 弱引用