pub struct Periodic {
pub period: Duration,
}
Expand description
Classic jitter-free periodic arrival process as introduced by Liu & Layland.
Fields§
§period: Duration
The exact separation between two job releases.
Implementations§
Trait Implementations§
Source§impl ArrivalBound for Periodic
impl ArrivalBound for Periodic
Source§fn number_arrivals(&self, delta: Duration) -> usize
fn number_arrivals(&self, delta: Duration) -> usize
Bound the number of jobs released in any interval of length
delta
.Source§fn steps_iter<'a>(&'a self) -> Box<dyn Iterator<Item = Duration> + 'a>
fn steps_iter<'a>(&'a self) -> Box<dyn Iterator<Item = Duration> + 'a>
Yield the sequence of interval lengths (i.e., values of
delta
in
ArrivalBound::number_arrivals) for which the arrival bound
“steps”, i.e., where it shows an increase in the number of
released jobs. Read moreSource§fn clone_with_jitter(&self, jitter: Duration) -> Box<dyn ArrivalBound>
fn clone_with_jitter(&self, jitter: Duration) -> Box<dyn ArrivalBound>
Clone the arrival model while accounting for added release
jitter. Returns a boxed
dyn
object because the underlying
type may change.Source§fn brute_force_steps_iter<'a>(
&'a self,
) -> Box<dyn Iterator<Item = Duration> + 'a>
fn brute_force_steps_iter<'a>( &'a self, ) -> Box<dyn Iterator<Item = Duration> + 'a>
Same semantics as ArrivalBound::steps_iter, but provided by
a default implementation in the most naive way possible.
Avoid if performance is at all important.
impl Copy for Periodic
Auto Trait Implementations§
impl Freeze for Periodic
impl RefUnwindSafe for Periodic
impl Send for Periodic
impl Sync for Periodic
impl Unpin for Periodic
impl UnwindSafe for Periodic
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,
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self
into a Left
variant of Either<Self, Self>
if into_left
is true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self
into a Left
variant of Either<Self, Self>
if into_left(&self)
returns true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read more