Skip to main content

LeanWorkerPoolConfig

Struct LeanWorkerPoolConfig 

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

Configuration for a local LeanWorkerPool.

Implementations§

Source§

impl LeanWorkerPoolConfig

Source

pub fn new(max_workers: usize) -> Self

Create pool configuration with a fixed local worker limit.

Source

pub fn max_workers(&self) -> usize

Return the maximum number of local child workers the pool may own.

Source

pub fn max_total_child_rss_kib(self, limit: u64) -> Self

Reject new distinct workers when known total child RSS reaches limit.

RSS sampling is best effort. On platforms where the pool cannot obtain samples, it records unavailable samples and does not make a false admission claim.

Source

pub fn per_worker_rss_ceiling_kib(self, limit: u64) -> Self

Cycle a worker before assigning work when its sampled RSS reaches limit.

Source

pub fn idle_cycle_after(self, limit: Duration) -> Self

Cycle an idle worker before assigning more work through an old lease.

Source

pub fn queue_wait_timeout(self, timeout: Duration) -> Self

Wait this long for local pool admission before returning a typed error.

The current pool is synchronous. This timeout documents and bounds the admission point without exposing worker ids or queue internals.

Source

pub fn max_total_child_rss_kib_limit(&self) -> Option<u64>

Return the configured total child RSS budget in KiB.

Source

pub fn per_worker_rss_ceiling_kib_limit(&self) -> Option<u64>

Return the configured per-worker RSS ceiling in KiB.

Source

pub fn idle_cycle_after_limit(&self) -> Option<Duration>

Return the configured idle-cycle duration.

Source

pub fn queue_wait_timeout_limit(&self) -> Duration

Return the configured pool admission wait timeout.

Trait Implementations§

Source§

impl Clone for LeanWorkerPoolConfig

Source§

fn clone(&self) -> LeanWorkerPoolConfig

Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§

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

Performs copy-assignment from source. Read more
Source§

impl Debug for LeanWorkerPoolConfig

Source§

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

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

impl Default for LeanWorkerPoolConfig

Source§

fn default() -> Self

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

impl PartialEq for LeanWorkerPoolConfig

Source§

fn eq(&self, other: &LeanWorkerPoolConfig) -> bool

Tests for self and other values to be equal, and is used by ==.
1.0.0 (const: unstable) · Source§

fn ne(&self, other: &Rhs) -> bool

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
Source§

impl Eq for LeanWorkerPoolConfig

Source§

impl StructuralPartialEq for LeanWorkerPoolConfig

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> Instrument for T

Source§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
Source§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
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> Same for T

Source§

type Output = T

Should always be Self
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.
Source§

impl<T> WithSubscriber for T

Source§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
Source§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more