Any correct implementation should make sure that you evict failed results,
and don't interrupt the underlying request that has been fired off.
EvictingCache$ and interrupting com.twitter.util.Futures are useful tools for building
correct FutureCaches. A reference implementation for caching the results of
an asynchronous function with a guava LoadingCache can be found at
GuavaCache$.fromLoadingCache.
A com.twitter.cache.FutureCache backed by a
com.google.common.cache.LoadingCache
.Any correct implementation should make sure that you evict failed results, and don't interrupt the underlying request that has been fired off. EvictingCache$ and interrupting com.twitter.util.Futures are useful tools for building correct FutureCaches. A reference implementation for caching the results of an asynchronous function with a guava LoadingCache can be found at GuavaCache$.fromLoadingCache.