Какие компоненты используются для создания корутины

«Какие компоненты используются для создания корутины» — вопрос из категории Coroutines и Flow, который задают на 23% собеседований Android Разработчик. Ниже — развёрнутый ответ с разбором ключевых моментов.

Ответ

В Kotlin корутины создаются с помощью следующих ключевых компонентов:

  1. CoroutineScope – определяет область видимости корутины (например, lifecycleScope в Android).
  2. CoroutineContext – набор контекстов (Dispatcher, Job, ExceptionHandler).
  3. Dispatcher – определяет поток выполнения (IO, Main, Default).
  4. Builder-функцииlaunch (для fire-and-forget) и async (для возврата результата).

Пример:

lifecycleScope.launch(Dispatchers.IO) {
    val result = async { fetchData() }.await()
    withContext(Dispatchers.Main) { updateUI(result) }
}