Каков наилучший способ получить кэшированные данные и затем обновить данные, если данные сервера изменились? - PullRequest
0 голосов
/ 05 мая 2019

Мне нужно проверить, существуют ли запрошенные данные в локальной БД, затем показать их в пользовательском интерфейсе и продолжить запрашивать сервер, обновлять локальную БД и обновлять пользовательский интерфейс, если они изменились.Я использовал Observable .concat(diskWithCache, networkWithSave) .first(data -> data.isUpToDate()); , но в этом случае networkWithSave начнется после того, как diskWithCache закончится, я хочу запросить оба одновременно, я знаю, что есть опция использования concatEager, которая запускает обе наблюдаемые, но буферизирует результатот последнего до первого наблюдаемого заканчивается.но в этом случае есть еще одна проблема, что если я хочу показать результаты как можно скорее.Итак, мой вопрос, что является лучшим оптимальным решением?

...