【发布时间】:2022-11-12 18:18:37
【问题描述】:
不知道有什么区别CoroutineScope(Dispatchers.Main).launch和runOnUiThread,我认为两者都将在主线程上运行。
但仍然混乱那里有什么区别。?
谢谢。
【问题讨论】:
标签: android multithreading kotlin kotlin-coroutines android-runonuithread
不知道有什么区别CoroutineScope(Dispatchers.Main).launch和runOnUiThread,我认为两者都将在主线程上运行。
但仍然混乱那里有什么区别。?
谢谢。
【问题讨论】:
标签: android multithreading kotlin kotlin-coroutines android-runonuithread
首先,您只能在Activity 的上下文中调用runOnUiThread。
其次,您不能从runOnUiThread 调用挂起函数,而可以在CoroutineScope(Dispatchers.Main).launch 块中调用。
第三,runOnUiThread 检查当前 ui 线程是否正忙于其他操作,如果是,则将任务发布到活动处理程序并在轮到时执行。
【讨论】: