TGViewer
Kotlin Adept Notes Kotlin Adept Notes @kotlin_adept · 2.43K subscribers
Post #48 3K
Корутинные рецепты

Возможно вы уже видели набор полезных рецептов для Kotlin Coroutines от Marcin Moskala. Это набор утилитарных функций, которые помогают в повседневной разработке, позволяют значительно сократить код и сделать его лаконичнее.

🔹Функция mapAsync позволяет элегантно сделать загрузку данных параллельной при работе с коллекциями
🔹Функции retryWhen и retryBackoff позволяют сделать повторные запросы в случае ошибки, а вторая функция позволяет сделать ожидание экспоненциальным, чтобы увеличить вероятность успешного повтора
🔹Функция raceOf позволяет запустить несколько suspend функций параллельно и получить результат той, что завершится быстрее остальных. На моей практике, это единственная функция, которая использует механизм select в корутинах.
🔹Функция suspendLazy позволяет создать ленивое suspending свойство, которое не будет блочить поток, обращающийся к этому свойству
🔹Ну и различные SharedDataSource и StateDataSource, которые нужны, чтобы пошарить один экземпляр Flow для нескольких подписчиков по переданному ключу.

📎Помимо этих рецептов, также есть либа с полезными операторами для Flow, взятыми из Rx.

💡 Еще к этому списку можно было бы докинуть runCatchingCancellable, который не съедает CancellationException или функцию, противоположную raceOf, которая выберет самый медленный источник, ведь иногда нам нужно, наоборот, подзамедлить UI, чтобы он не мелькал и пользователь понимал, что происходит на экране.

Если вы знаете еще полезные экстеншены для корутин, делитесь ими в комментариях 💬

#Coroutines
  • 🔥 30
More from @kotlin_adept
  1. Oct 3, 2026Опубликовали доклад с прошедшей конференции, где я рассказал о том, как в рабочем проекте…
  2. Sep 27, 2026На этом парад конференций Подлодки не заканчивается: уже на следующей неделе я выступлю с…
  3. Sep 26, 2026Полезные AI-тулзы для Android-разработчика На конференции обсудили разные AI-инструменты,…
  4. Sep 18, 2026Как подружить строгий Java-энтерпрайз со всеми ИИ изменениями? Сбер поможет разобраться 24…
  5. Sep 17, 2026Мифы и заблуждения в AI-разработке Забавно, как в мире AI-разработки постоянно появляются…
  6. Sep 15, 2026Тем временем мы с командой подготовили для вас новый сезон Podlodka Android Crew при подде…
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 →