pub struct Stash {
pub time: u64,
pub pages: FxHashMap<u64, PageInfoPtr>,
pub rdrs: BTreeMap<u64, usize>,
pub vers: BTreeMap<u64, FxHashSet<u64>>,
pub total: i64,
pub mem_limit: usize,
pub min: GHeap<u64, u64, u32>,
pub read: u64,
pub miss: u64,
}
Expand description
Central store of data.
Fields§
§time: u64
Write time - number of writes.
pages: FxHashMap<u64, PageInfoPtr>
Page number -> page info.
rdrs: BTreeMap<u64, usize>
Time -> reader count. Number of readers for given time.
vers: BTreeMap<u64, FxHashSet<u64>>
Time -> set of page numbers. Page copies held for given time.
total: i64
Total size of current pages.
mem_limit: usize
trim_cache reduces total to mem_limit (or below).
min: GHeap<u64, u64, u32>
Tracks loaded page with smallest usage.
read: u64
Total number of page accesses.
miss: u64
Total number of misses ( data was not already loaded ).
Implementations§
Trait Implementations§
Auto Trait Implementations§
impl Freeze for Stash
impl RefUnwindSafe for Stash
impl Send for Stash
impl Sync for Stash
impl Unpin for Stash
impl UnwindSafe for Stash
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more