Я использую Guava's Loading Cache
для кэширования результатов HTTP-запросов.Kotlin / KTOR предоставляет клиентскую библиотеку HTTP на основе сопрограмм (то есть неблокирующих HTTP-запросов).
Моя проблема заключается в том, что загрузочный кэш не имеет представления о suspend
функциях.Функция load
, которую я передаю в загрузочный кеш , не может приостановить.Поэтому я вынужден выполнять HTTP-запросы внутри runBlocking
вызова, полностью исключая преимущество неблокирующих вызовов.
Мой вопрос: есть ли лучший способ?Как бы вы реализовали кеширование результатов сопрограмм?