WheelConfigBuilder

Struct WheelConfigBuilder 

Source
pub struct WheelConfigBuilder { /* private fields */ }
Expand description

时间轮配置构建器 (Timing Wheel Configuration Builder)

Implementations§

Source§

impl WheelConfigBuilder

Source

pub fn l0_tick_duration(self, duration: Duration) -> Self

设置 L0 层 tick 时长 (Set L0 layer tick duration)

Source

pub fn l0_slot_count(self, count: usize) -> Self

设置 L0 层槽位数量 (Set L0 layer slot count)

Source

pub fn l1_tick_duration(self, duration: Duration) -> Self

设置 L1 层 tick 时长 (Set L1 layer tick duration)

Source

pub fn l1_slot_count(self, count: usize) -> Self

设置 L1 层槽位数量 (Set L1 layer slot count)

Source

pub fn build(self) -> Result<WheelConfig, TimerError>

构建配置并进行验证 (Build and validate configuration)

§返回 (Returns)
  • Ok(WheelConfig): 配置有效 (Configuration is valid)
  • Err(TimerError): 配置验证失败 (Configuration validation failed)
§验证规则 (Validation Rules)
  • L0 tick 时长必须大于 0 (L0 tick duration must be greater than 0)
  • L1 tick 时长必须大于 0 (L1 tick duration must be greater than 0)
  • L0 槽位数量必须大于 0 且是 2 的幂次方 (L0 slot count must be greater than 0 and power of 2)
  • L1 槽位数量必须大于 0 且是 2 的幂次方 (L1 slot count must be greater than 0 and power of 2)
  • L1 tick 必须是 L0 tick 的整数倍 (L1 tick must be an integer multiple of L0 tick)

Trait Implementations§

Source§

impl Clone for WheelConfigBuilder

Source§

fn clone(&self) -> WheelConfigBuilder

Returns a duplicate of the value. Read more
1.0.0 · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Debug for WheelConfigBuilder

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl Default for WheelConfigBuilder

Source§

fn default() -> Self

Returns the “default value” for a type. Read more

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> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. 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> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
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.