pub enum IoMessage<Message: Send + Sized> {
Shutdown,
AddHandler {
handler: Arc<dyn IoHandler<Message> + Send>,
},
RemoveHandler {
handler_id: usize,
},
AddTimer {
handler_id: usize,
token: TimerToken,
delay: Duration,
once: bool,
cancel_all: bool,
},
RemoveTimer {
handler_id: usize,
token: TimerToken,
},
RegisterStream {
handler_id: usize,
token: StreamToken,
},
DeregisterStream {
handler_id: usize,
token: StreamToken,
},
UpdateStreamRegistration {
handler_id: usize,
token: StreamToken,
},
UserMessage(Arc<Message>),
RemoteMessage {
peer: StreamToken,
handler_id: usize,
msg: Arc<Message>,
},
}
Expand description
Messages used to communicate with the event loop from other threads.
Variants§
Shutdown
Shutdown the event loop
AddHandler
Register a new protocol handler.
RemoveHandler
AddTimer
Fields
§
token: TimerToken
RemoveTimer
RegisterStream
DeregisterStream
UpdateStreamRegistration
UserMessage(Arc<Message>)
Broadcast a message across all protocol handlers.
RemoteMessage
Handle a message received from a peer by a specified protocol handler
Trait Implementations§
Auto Trait Implementations§
impl<Message> Freeze for IoMessage<Message>
impl<Message> !RefUnwindSafe for IoMessage<Message>
impl<Message> Send for IoMessage<Message>where
Message: Sync,
impl<Message> Sync for IoMessage<Message>where
Message: Sync,
impl<Message> Unpin for IoMessage<Message>
impl<Message> !UnwindSafe for IoMessage<Message>
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