Scope와 Context

Scope

Context

ViewModelScope

  • ViewModel에 의해 제공되는 Scope.
  • ViewModel의 Lifecycle과 연동된다(onCleared() 호출시 취소된다).
  • SupervisorJob1을 가진다.
  • Dispatcher.Main.immediate을 사용한다.

LifecycleScope

  • LifecycleOwner의 Lifecycle과 연결된다.
  • Activity, Fragment와 연결할 경우 화면 회전과 같은 Configuration 변경 시에 취소된다.

1SupervisorJob: 자식 코루틴이 발생시킨 예외를 전파하지 않는다.