Ответ
Параллелизм — это способность системы выполнять несколько задач одновременно, используя несколько потоков или процессов. В Android это реализуется через Thread, Handler, AsyncTask (устарел), Coroutines или RxJava.
Пример с корутинами:
viewModelScope.launch(Dispatchers.IO) {
val data = fetchData() // Блокирующая операция в фоне
withContext(Dispatchers.Main) {
updateUI(data) // Обновление UI в главном потоке
}
}
Нюансы:
- UI-операции только в главном потоке (
Main/UI). - Блокировка главного потока приводит к ANR.
- Корутины предпочтительны из-за простоты и меньшего boilerplate.