Skip to main content

Config

Struct Config 

Source
pub struct Config {
    pub capacity: usize,
    pub t1_slots: usize,
    pub t2_slots: usize,
    pub duration: u32,
    pub threads: usize,
    pub poll_us: u64,
    pub flush_tick_threshold: u64,
}

Fields§

§capacity: usize§t1_slots: usize§t2_slots: usize§duration: u32

TTL duration in epoch ticks (one tick ≈ 100 ms in std mode).

§threads: usize§poll_us: u64

Daemon poll interval in microseconds (1 000–10 000 µs = 1–10 ms). Controls the latency vs. idle-CPU trade-off. Lower = faster hit-signal delivery, higher CPU when idle. Higher = more efficient idle, but hotter TLS buffers may stall longer.

§flush_tick_threshold: u64

TLS flush threshold in daemon ticks. A Worker forces a TLS buffer flush when it detects that the Daemon tick counter has advanced by at least this many ticks since the last flush, regardless of buffer fill level.

Rule of thumb: flush_tick_threshold ≈ 1ms / poll_us. For poll_us = 1 000 µs (1 ms): threshold = 1. For poll_us = 5 000 µs (5 ms): threshold = 1 (flush every 5 ms).

Implementations§

Source§

impl Config

Source

pub fn with_memory_budget(ram_mb: usize, duration: u32) -> Self

Budget-based constructor: specify RAM and TTL, the engine picks sizes.

Source

pub fn new_expert( capacity: usize, t1_slots: usize, t2_slots: usize, duration: u32, threads: usize, ) -> Self

Expert constructor with explicit physical-law assertions.

Source

pub fn with_poll_us(self, poll_us: u64) -> Self

Builder: set Daemon poll interval (1 000–10 000 µs).

Source

pub fn with_flush_tick_threshold(self, ticks: u64) -> Self

Builder: set TLS flush threshold in daemon ticks.

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.