Struct moka::unsync::CacheBuilder [−][src]
pub struct CacheBuilder<C> { /* fields omitted */ }
Expand description
Builds a Cache
with various configuration knobs.
Examples
use moka::unsync::CacheBuilder;
use std::time::Duration;
let mut cache = CacheBuilder::new(10_000) // Max 10,000 elements
// Time to live (TTL): 30 minutes
.time_to_live(Duration::from_secs(30 * 60))
// Time to idle (TTI): 5 minutes
.time_to_idle(Duration::from_secs( 5 * 60))
// Create the cache.
.build();
// This entry will expire after 5 minutes (TTI) if there is no get().
cache.insert(0, "zero");
// This get() will extend the entry life for another 5 minutes.
cache.get(&0);
// Even though we keep calling get(), the entry will expire
// after 30 minutes (TTL) from the insert().
Implementations
Construct a new CacheBuilder
that will be used to build a Cache
holding
up to max_capacity
entries.
Builds a Cache<K, V>
.
Builds a Cache<K, V, S>
, with the given hasher
.
Sets the initial capacity of the cache.
Sets the time to live of the cache.
A cached entry will be expired after the specified duration past from
insert
.
Sets the time to idle of the cache.
A cached entry will be expired after the specified duration past from get
or insert
.