как использовать общий кеш в охттп - PullRequest
0 голосов
/ 02 мая 2018

Можно ли использовать кэш-память okhttp совместно, т. Е. Иметь несколько клиентов, обращающихся к одному и тому же каталогу кеша, чтобы каждый из них не оставлял свой собственный.

В повторениях okhttp wiki мы находим:

Ошибка одновременного доступа нескольких кешей к одному и тому же каталогу кеша

Я не ищу разные кеши для использования одной и той же папки, а скорее единый общий кеш, который может обновляться более чем одним клиентом.

Простой пример (на Java):

    Cache cache = new Cache(cacheDirectory, cacheSize);

    client  = new OkHttpClient.Builder().cache(cache).build();
    client2 = new OkHttpClient.Builder().cache(cache).build();

Это было бы небезопасно? Если да, есть ли альтернатива для достижения этого или это вообще невозможно?

1 Ответ

0 голосов
/ 03 мая 2018

Да, это абсолютно безопасно. Было бы небезопасно иметь несколько экземпляров Cache, которые совместно используют каталог, либо в одном процессе, либо в нескольких.

...