什么是UI线程?
常说的UI线程到底是哪个线程?UI线程一定是主线程吗?
下面先给出两条确定的结论:
- UI线程就是刷新UI所在的线程
- UI是单线程刷新的
关于第二条为什么UI只能是单线程刷新的呢?道理很简单,因为多线程访问的话需要加锁,太卡,所以一般系统的UI框架都是采用单线程实现的。
那么在Android中是否是意味着UI线程==主线程?
在Android中要在UI线程执行代码,有两种常见的调用方式:
- Activity.runOnUiThread(Runnable)
- View.post(Runnable)
如上面代码所示,对于 Activity.runOnUiThread(Runnable) 而言,非常简单,它的UI线程就是在