pub struct SharedReactor<T: SharedService + Send + Sync> {
pub services: Arc<RwLock<HashMap<usize, Arc<(Arc<T>, JoinHandle<Result<()>>)>>>>,
pub notifier_channel: (UnboundedSender<bool>, UnboundedReceiver<bool>),
}
Expand description
Contains and runs shared services
Fields§
§services: Arc<RwLock<HashMap<usize, Arc<(Arc<T>, JoinHandle<Result<()>>)>>>>
§notifier_channel: (UnboundedSender<bool>, UnboundedReceiver<bool>)
Implementations§
Trait Implementations§
fn spawn_service<'life0, 'async_trait>(
&'life0 self,
service: T,
id: usize,
) -> Pin<Box<dyn Future<Output = Res<()>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn get_service<'life0, 'async_trait>(
&'life0 self,
id: usize,
) -> Pin<Box<dyn Future<Output = Option<Weak<T>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Auto Trait Implementations§
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