Какая типичная ошибка при работе с SupervisorJob у Android Kotlin разработчика?
Что хотят услышать интервьюеры:
Частая ошибка: кандидат знает название SupervisorJob, но не объясняет, как это влияет на lifecycle, memory, state, threading или тестируемость.
Ответ:
Конкретный риск: запускать работу в GlobalScope, блокировать Main thread, не учитывать cancellation или собирать Flow вне lifecycle.
Как исправить: свяжите решение с реальным Android-контекстом: позволяет дочерним корутинам падать независимо и полезен для независимых задач в одном scope. Сильный ответ: назвать симптом, причину, способ диагностики и способ предотвратить регрессию.
val scope = CoroutineScope(SupervisorJob() + Dispatchers.Main)