子线程创建handler的方式

子线程创建handler的方式,在这里做个记录

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
Thread(object : Runnable {
override fun run() {
Looper.prepare()
//Looper.myLooper()这里也可以不写,Handler会自动获取当前线程的looper
//也可以用Looper.getMainLooper()获取主线程的looper
//Looper.getMainLooper()在整个程序进程中是单例的
//进程在ActivityThread中调用Looper.prepareMainLooper()初始化Looper.getMainLooper()
//通过设置AndroidManifest.xml中的process,可以让产生多个进程,让Looper.getMainLooper()不一样
val handler = Handler(Looper.myLooper())
handler.post {
L.i("ss ${Looper.myLooper()?.toString()}")
}
Looper.loop()
}
}).start()

坚持原创分享,您的支持将鼓励我继续创作!