pub struct EventQ { /* private fields */ }Expand description
Events storage and processor
Should be single instance per poll loop.
events is a event storage that shared by reference with the senders.
sender shared between notifiers thread to expose custom messages to the poll loop
Implementations§
Source§impl EventQ
impl EventQ
Sourcepub fn new(poll: &Poll, token: Token, num_events: usize) -> Result<Self>
pub fn new(poll: &Poll, token: Token, num_events: usize) -> Result<Self>
Create new EventQ. Register Waker into the exist Poll instance
and create shared storage for the specified number of events
Sourcepub fn get_sender(&self) -> EventQSender
pub fn get_sender(&self) -> EventQSender
Get the cloned EventQSender
Sourcepub fn triggered_events(&self) -> EventQIterator ⓘ
pub fn triggered_events(&self) -> EventQIterator ⓘ
Iterator for pending events.
Created over the already triggered events at the moment.
All events in the EventQ are reset before the iterator is created, which allows
triggering new events and scheduling the poll wake during current proccesing
Auto Trait Implementations§
impl Freeze for EventQ
impl RefUnwindSafe for EventQ
impl Send for EventQ
impl Sync for EventQ
impl Unpin for EventQ
impl UnwindSafe for EventQ
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