viewModelScope: что это
Коротко
viewModelScope: coroutineScope ViewModel: SupervisorJob() + Dispatchers.Main.immediate, отменяется в onCleared(). Запросы в нём переживают поворот и отменяются при закрытии экрана.
Определение
CoroutineScope ViewModel: SupervisorJob() + Dispatchers.Main.immediate, отменяется в onCleared(). Запросы в нём переживают поворот и отменяются при закрытии экрана. Ошибка одной корутины не отменяет остальные, но необработанное исключение всё равно уронит приложение.
Из урока «ViewModel и сохранение состояния за 7 минут»
Когда экран закрывают окончательно (finish, «Назад»), store очищается и у ViewModel вызывается onCleared(), а viewModelScope отменяется. viewModelScope это CoroutineScope с SupervisorJob и Dispatchers.Main.immediate, отменяется в onCleared. Для потоков из репозитория удобно stateIn(viewModelScope, WhileSubscribed(5000), initial).
Читать урок целикомВопросы по теме с собеседований
Запомните, а не прочитайте
В тренажёре карточка вернётся, когда начнёт забываться. А билеты по Android проверят, что термин понятен в деле.