pub(crate) struct Scheduler {
inbox: SchedBox,
oboxes: Vec<SchedBox>,
smtp: SmtpConnectionState,
smtp_handle: JoinHandle<()>,
ephemeral_handle: JoinHandle<()>,
ephemeral_interrupt_send: Sender<()>,
location_handle: JoinHandle<()>,
location_interrupt_send: Sender<()>,
recently_seen_loop: RecentlySeenLoop,
}
Expand description
Job and connection scheduler.
Fields§
§inbox: SchedBox
§oboxes: Vec<SchedBox>
Optional boxes – mvbox, sentbox.
smtp: SmtpConnectionState
§smtp_handle: JoinHandle<()>
§ephemeral_handle: JoinHandle<()>
§ephemeral_interrupt_send: Sender<()>
§location_handle: JoinHandle<()>
§location_interrupt_send: Sender<()>
§recently_seen_loop: RecentlySeenLoop
Implementations§
source§impl Scheduler
impl Scheduler
fn boxes(&self) -> Chain<Once<&SchedBox>, Iter<'_, SchedBox>>
fn maybe_network(&self)
fn maybe_network_lost(&self)
fn interrupt_inbox(&self)
fn interrupt_oboxes(&self)
fn interrupt_smtp(&self)
fn interrupt_ephemeral_task(&self)
fn interrupt_location(&self)
fn interrupt_recently_seen(&self, contact_id: ContactId, timestamp: i64)
Trait Implementations§
Auto Trait Implementations§
impl !RefUnwindSafe for Scheduler
impl Send for Scheduler
impl Sync for Scheduler
impl Unpin for Scheduler
impl !UnwindSafe for Scheduler
Blanket Implementations§
§impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
§impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
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