TGViewer
Android Good Reads Android Good Reads @droidgr · 4.03K subscribers
Post #2244 3.13K
Разбираем использование runBlocking в Android

👉 Что такое runBlocking?
Функция, которая запускает новую корутину и блокирует текущий поток до её завершения.
Часто используется в примерах для демонстрации корутин в main() функции.

👉 Почему стоит быть осторожным с runBlocking в Android?
Блокирует текущий поток, что на Android может привести к замораживанию UI и возникновению ANR (Application Not Responding).
Особенно критично при выполнении операций ввода-вывода в главном потоке.

👉 Пример неправильного использования:
class MainViewModel(private val mainRepository: MainRepository) : ViewModel() {
// Не рекомендуется
private fun fetchPosters() = runBlocking {
mainRepository.fetchPosters()
}
}

В этом примере runBlocking блокирует главный поток, что может привести к проблемам с отзывчивостью приложения.

👉 Альтернативы:
Используйте viewModelScope для запуска корутин, что обеспечивает автоматическую отмену задач при уничтожении ViewModel.
Применяйте launch или async для асинхронных операций без блокировки главного потока.
getstream.io Exercise Caution When Using runBlocking on Android Explore the internal mechanism of runBlocking and the reasons why you exercise caution when using runBlocking.
  • 😁 14
  • 👍 7
  • 🔥 3
  • 👎 1
  • 💔 1
More from @droidgr
  1. Sep 30, 2026🏗 Строим мультиагентные системы для разработки на Podlodka AI Crew Инженерные задачи редк…
  2. Aug 6, 2026Если вам всё ещё интересна мобильная разработка, рекомендую подписаться на канал Kotlin Ad…
  3. Aug 4, 2026Post #2504
  4. Jul 26, 2026Как я играю в экосистему продуктов Наиболее близка мне сейчас тема ухода за животными. Я м…
  5. Jul 26, 2026Привет! Как вы могли заметить, я более не помогаю вести данный канал. Если вам понравилось…
  6. Jun 10, 2026Немного про продуктивность без AI. Старый добрый помодоро таймер, но ужесточенный трекинго…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →