Код: Выделить всё
var cache = Caffeine
.refreshAfterWrite(1, MINUTES)
.build(loader);
Когда кэшированная запись существует, но уже отмечена для обновить (более 1 минуты), а затем я вызываю get, он блокируется и пытается загрузить из загрузчика, или он немедленно возвращает кешированное значение и загружает его в фоновом потоке?
Я пытался поискать в документации и не нашел четкого объяснения этому. Функция Refresh упоминается только при вызове обновления, но не при вызове get. По моим рассуждениям, поскольку replaceAfterWrite не удаляет записи с истекшим сроком действия, он должен использовать их и возвращать это кэшированное значение без блокировки, но я не нашел подтверждения.
Подробнее здесь: https://stackoverflow.com/questions/789 ... -operation
Мобильная версия