Struct fuel_core_services::ServiceRunner
source · pub struct ServiceRunner<S>where
S: RunnableService + 'static,{
pub shared: S::SharedData,
/* private fields */
}
Expand description
The service runner manages the lifecycle, execution and error handling of a RunnableService
.
It can be cloned and passed between threads.
Fields§
The shared state of the service
Implementations§
source§impl<S> ServiceRunner<S>where
S: RunnableService + 'static,
impl<S> ServiceRunner<S>where S: RunnableService + 'static,
Trait Implementations§
source§impl<S> Debug for ServiceRunner<S>where
S: RunnableService + 'static + Debug,
S::SharedData: Debug,
impl<S> Debug for ServiceRunner<S>where S: RunnableService + 'static + Debug, S::SharedData: Debug,
source§impl<S> Drop for ServiceRunner<S>where
S: RunnableService + 'static,
impl<S> Drop for ServiceRunner<S>where S: RunnableService + 'static,
source§impl<S> Service for ServiceRunner<S>where
S: RunnableService + 'static,
impl<S> Service for ServiceRunner<S>where S: RunnableService + 'static,
source§fn start(&self) -> Result<()>
fn start(&self) -> Result<()>
Send a start signal to the service without waiting for it to start.
Returns an error if the service was already started.
source§fn start_and_await<'life0, 'async_trait>(
&'life0 self
) -> Pin<Box<dyn Future<Output = Result<State>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn start_and_await<'life0, 'async_trait>( &'life0 self ) -> Pin<Box<dyn Future<Output = Result<State>> + Send + 'async_trait>>where Self: 'async_trait, 'life0: 'async_trait,
Send a start signal to the service and wait for it to start up.
Returns an error if the service was already started.
source§fn await_start_or_stop<'life0, 'async_trait>(
&'life0 self
) -> Pin<Box<dyn Future<Output = Result<State>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn await_start_or_stop<'life0, 'async_trait>( &'life0 self ) -> Pin<Box<dyn Future<Output = Result<State>> + Send + 'async_trait>>where Self: 'async_trait, 'life0: 'async_trait,
Wait for service to start or stop (without sending any signal).
source§fn stop(&self) -> bool
fn stop(&self) -> bool
Send a stop signal to the service without waiting for it to shutdown.
Returns false if the service was already stopped, true if it is running.
source§fn stop_and_await<'life0, 'async_trait>(
&'life0 self
) -> Pin<Box<dyn Future<Output = Result<State>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn stop_and_await<'life0, 'async_trait>( &'life0 self ) -> Pin<Box<dyn Future<Output = Result<State>> + Send + 'async_trait>>where Self: 'async_trait, 'life0: 'async_trait,
Send stop signal to service and wait for it to shutdown.
source§fn await_stop<'life0, 'async_trait>(
&'life0 self
) -> Pin<Box<dyn Future<Output = Result<State>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn await_stop<'life0, 'async_trait>( &'life0 self ) -> Pin<Box<dyn Future<Output = Result<State>> + Send + 'async_trait>>where Self: 'async_trait, 'life0: 'async_trait,
Wait for service to stop (without sending a stop signal).
source§fn state_watcher(&self) -> StateWatcher
fn state_watcher(&self) -> StateWatcher
Returns the state watcher of the service.
Auto Trait Implementations§
impl<S> !RefUnwindSafe for ServiceRunner<S>
impl<S> Send for ServiceRunner<S>
impl<S> Sync for ServiceRunner<S>
impl<S> Unpin for ServiceRunner<S>where <S as RunnableService>::SharedData: Unpin,
impl<S> !UnwindSafe for ServiceRunner<S>
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