pub async fn run(self) -> Result<(), shutdown::Aborted> {
        let Self {
            admin,
            initialized,
            shutdown,
            shutdown_rx,
            ..
        } = self;

        let admin = admin.spawn();

        // Set the admin readiness to succeed once all initilization handles have been released.
        let ready = admin.readiness();
        tokio::spawn(async move {
            initialized.initialized().await;
            ready.set(true);
            tracing::debug!("initialized");

            drop(shutdown_rx.signaled().await);
            ready.set(false);
            tracing::debug!("shutdown");
        });

        shutdown.signaled().await?;

        Ok(())
    }
/// Runs the runtime until it is shutdown
///
/// Shutdown starts when a SIGINT or SIGTERM signal is received and completes when all
/// components have terminated gracefully or when a subsequent signal is received.
///
/// The admin server's readiness endpoint returns success only once all watches (and other
/// initalized components) have become ready and then returns an error after shutdown is
/// initiated.
Runs the runtime until it is shutdown
Shutdown starts when a SIGINT or SIGTERM signal is received and completes when all
components have terminated gracefully or when a subsequent signal is received.

The admin server's readiness endpoint returns success only once all watches (and other
initalized components) have become ready and then returns an error after shutdown is
initiated.
Runs the runtime until it is shutdown Shutdown starts when a SIGINT or SIGTERM signal is received and completes when all components have terminated gracefully or when a subsequent signal is received . The admin server ' s readiness endpoint returns success only once all watches ( and other initalized components ) have become ready and then returns an error after shutdown is initiated .
pub async fn run(self) -> Result<(), shutdown::Aborted> {
        let Self {
            admin,
            initialized,
            shutdown,
            shutdown_rx,
            ..
        } = self;
        let admin = admin.spawn();
        // Set the admin readiness to succeed once all initilization handles have been released.
        let ready = admin.readiness();
        tokio::spawn(async move {
            initialized.initialized().await;
            ready.set(true);
            tracing::debug!("initialized");
            drop(shutdown_rx.signaled().await);
            ready.set(false);
            tracing::debug!("shutdown");
        });
        shutdown.signaled().await?;
        Ok(())
    }
pub async fn run ( self ) -> Result < ( ) , shutdown :: Aborted > { let Self { admin , initialized , shutdown , shutdown_rx , .. } = self ; let admin = admin . spawn ( ) ; // Set the admin readiness to succeed once all initilization handles have been released. let ready = admin . readiness ( ) ; tokio :: spawn ( async move { initialized . initialized ( ) . await ; ready . set ( true ) ; tracing :: debug ! ( " " ) ; drop ( shutdown_rx . signaled ( ) . await ) ; ready . set ( false ) ; tracing :: debug ! ( " " ) ; } ) ; shutdown . signaled ( ) . await ? ; Ok ( ( ) ) }
Runs the runtime until it is shutdown
Shutdown starts when a SIGINT or SIGTERM signal is received and completes when all
components have terminated gracefully or when a subsequent signal is received.
Runs the runtime until it is shutdown Shutdown starts when a SIGINT or SIGTERM signal is received and completes when all components have terminated gracefully or when a subsequent signal is received .
self
self