Dispatchers.IO - 此调度程序经过了专门优化,适合在主线程之外执行磁盘或网络I/O。 示例包括使用Room 组件、从文件中读取数据或向文件中写入数据,以及运行任何网络操作。
Dispatchers.Default - 此调度程序经过了专门优化,适合在主线程之外执行占用大量CPU 资源的工作
GlobalScope:
全局作用域 (不推荐使用)
默认线程为 DefaultDispatcher-worker-2
其中Default、IO线程名字都为-2
MainScope
暂未测试
ViewModelScope :
当 ViewModel 被销毁时它会自动取消协程任务
lifecycleScope :
个人非常喜欢用 需要导库 如下:
implementation 'androidx.lifecycle:lifecycle-runtime-ktx:2.2.0'//lifecycleScope
默认线程为 main 自动继承当前 activity 的 scope context,所以在 main 线程执行
Default线程:-2
IO线程:-1