pub struct TaskLaneConfig<Kind: 'static, Lane> {
pub lane: Lane,
pub kinds: &'static [Kind],
pub limit: usize,
pub fast_continue: bool,
pub lock_key: &'static str,
}Expand description
Product-owned dispatch lane configuration.
The lane enum and task kind enum stay in product crates, but the scheduler shape is shared: every lane has a bounded concurrency limit, a fixed list of task kinds, an optional fast-continue mode for immediately filling freed slots, and a product lock key used by the store layer to serialize lane capacity checks.
Fields§
§lane: LaneProduct lane identifier.
kinds: &'static [Kind]Product task kinds assigned to this lane.
limit: usizeMaximum active tasks for this lane.
fast_continue: boolWhether the dispatcher should immediately claim another batch after finishing this one.
lock_key: &'static strProduct configuration key used as the lane-level transaction lock.
Trait Implementations§
Source§impl<Kind: Clone + 'static, Lane: Clone> Clone for TaskLaneConfig<Kind, Lane>
impl<Kind: Clone + 'static, Lane: Clone> Clone for TaskLaneConfig<Kind, Lane>
Source§fn clone(&self) -> TaskLaneConfig<Kind, Lane>
fn clone(&self) -> TaskLaneConfig<Kind, Lane>
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl<Kind: PartialEq + 'static, Lane: PartialEq> PartialEq for TaskLaneConfig<Kind, Lane>
impl<Kind: PartialEq + 'static, Lane: PartialEq> PartialEq for TaskLaneConfig<Kind, Lane>
Source§fn eq(&self, other: &TaskLaneConfig<Kind, Lane>) -> bool
fn eq(&self, other: &TaskLaneConfig<Kind, Lane>) -> bool
Tests for
self and other values to be equal, and is used by ==.impl<Kind: Copy + 'static, Lane: Copy> Copy for TaskLaneConfig<Kind, Lane>
impl<Kind: Eq + 'static, Lane: Eq> Eq for TaskLaneConfig<Kind, Lane>
impl<Kind: 'static, Lane> StructuralPartialEq for TaskLaneConfig<Kind, Lane>
Auto Trait Implementations§
impl<Kind, Lane> Freeze for TaskLaneConfig<Kind, Lane>where
Lane: Freeze,
impl<Kind, Lane> RefUnwindSafe for TaskLaneConfig<Kind, Lane>where
Lane: RefUnwindSafe,
Kind: RefUnwindSafe,
impl<Kind, Lane> Send for TaskLaneConfig<Kind, Lane>
impl<Kind, Lane> Sync for TaskLaneConfig<Kind, Lane>
impl<Kind, Lane> Unpin for TaskLaneConfig<Kind, Lane>where
Lane: Unpin,
impl<Kind, Lane> UnsafeUnpin for TaskLaneConfig<Kind, Lane>where
Lane: UnsafeUnpin,
impl<Kind, Lane> UnwindSafe for TaskLaneConfig<Kind, Lane>where
Lane: UnwindSafe,
Kind: RefUnwindSafe,
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Checks if this value is equivalent to the given key. Read more
§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key and return true if they are equal.