我已经检查了官方 Android 文档/指南Looper
, Handler
and MessageQueue
。但我无法得到它。我是 Android 新手,对这些概念非常困惑。
A Looper是一个消息处理循环:它读取并处理来自MessageQueue. The Looper
class 通常与 a 结合使用HandlerThread(的子类Thread
).
A Handler是一个实用程序类,有助于与Looper
——主要通过发布消息和Runnable
线程的对象MessageQueue
。当一个Handler
创建后,它绑定到特定的Looper
(以及关联的线程和消息队列)。
在典型用法中,您创建并启动一个HandlerThread
,然后创建一个Handler
其他线程可以通过该对象(或多个对象)与HandlerThread
实例。这Handler
必须在运行时创建HandlerThread
,尽管一旦创建,就没有限制哪些线程可以使用Handler
的调度方法(post(Runnable)
, etc.)
Android 应用程序中的主线程(也称为 UI 线程)在创建应用程序实例之前设置为处理程序线程。
除了课程文档之外,还有关于所有这些的精彩讨论here.
附:上面提到的所有类都在包中android.os
.
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)