CoroutineScope

定义协程必须指定其 CoroutineScope,它会跟踪所有协程,同样它还可以取消由它所启动的所有协程

常用的相关API有:

  • GlobalScope,生命周期是process级别的,及时Activity或Fragment已经被销毁,协程仍然在执行。
  • MainScope,在Activity中使用,可以在onDestroy()中取消协程。
  • viewModelScope,只能在ViewModel中使用,绑定ViewModel的生命周期。
  • lifecycleScope,只能在Activity、Fragment中使用,会绑定Activity和Fragment的生命周期