Ответ
В Kotlin scope (CoroutineScope) — это контекст для запуска корутин, содержащий Job и Dispatcher. Он управляет жизненным циклом корутин. Пример:
val scope = CoroutineScope(Dispatchers.IO + SupervisorJob())
scope.launch {
// Код корутины
}
Ключевые компоненты:
- Job — контролирует жизненный цикл (отмена/ожидание).
- Dispatcher — определяет поток выполнения (Main, IO, Default).
- Обработка ошибок — через
SupervisorJobилиCoroutineExceptionHandler.
Важно: viewModelScope и lifecycleScope уже привязаны к жизненному циклу компонентов (ViewModel/Activity/Fragment).