pub struct RouterProxy { /* private fields */ }
Expand description
A RouterProxy
provides methods for talking to the router. Calling
new automatically spins up a router thread which
waits for events on its registered IpcReceiver<T>
s. The RouterProxy
’s
methods communicate with the running router thread to register new
IpcReceiver<T>
’s
Implementations§
source§impl RouterProxy
impl RouterProxy
pub fn new() -> RouterProxy
sourcepub fn add_route(&self, receiver: OpaqueIpcReceiver, callback: RouterHandler)
pub fn add_route(&self, receiver: OpaqueIpcReceiver, callback: RouterHandler)
Add a new (receiver, callback) pair to the router, and send a wakeup message to the router.
sourcepub fn shutdown(&self)
pub fn shutdown(&self)
Send a shutdown message to the router containing a ACK sender, send a wakeup message to the router, and block on the ACK. Calling it is idempotent, which can be useful when running a multi-process system in single-process mode.
sourcepub fn route_ipc_receiver_to_crossbeam_sender<T>(
&self,
ipc_receiver: IpcReceiver<T>,
crossbeam_sender: Sender<T>,
)
pub fn route_ipc_receiver_to_crossbeam_sender<T>( &self, ipc_receiver: IpcReceiver<T>, crossbeam_sender: Sender<T>, )
A convenience function to route an IpcReceiver<T>
to an existing Sender<T>
.
sourcepub fn route_ipc_receiver_to_new_crossbeam_receiver<T>(
&self,
ipc_receiver: IpcReceiver<T>,
) -> Receiver<T>
pub fn route_ipc_receiver_to_new_crossbeam_receiver<T>( &self, ipc_receiver: IpcReceiver<T>, ) -> Receiver<T>
A convenience function to route an IpcReceiver<T>
to a Receiver<T>
: the most common
use of a Router
.