pub(crate) fn restart(&mut self) -> Result<ChildProcess, Error> {
        // If the process hasn't already terminated for some reason, kill it.
        if let Ok(None) = self.process.try_wait() {
            let _ = self.process.kill();
            let _ = self.process.wait();
        }
        ChildProcess::new_internal(Arc::clone(&self.command), Arc::clone(&self.stderr_sender))
    }
/// Terminates this process if it hasn't already, then restarts
Terminates this process if it hasn't already, then restarts
Terminates this process if it hasn ' t already then restarts
pub(crate) fn restart(&mut self) -> Result<ChildProcess, Error> {
        // If the process hasn't already terminated for some reason, kill it.
        if let Ok(None) = self.process.try_wait() {
            let _ = self.process.kill();
            let _ = self.process.wait();
        }
        ChildProcess::new_internal(Arc::clone(&self.command), Arc::clone(&self.stderr_sender))
    }
pub ( crate ) fn restart ( & mut self ) -> Result < ChildProcess , Error > { // If the process hasn't already terminated for some reason, kill it. if let Ok ( None ) = self . process . try_wait ( ) { let _ = self . process . kill ( ) ; let _ = self . process . wait ( ) ; } ChildProcess :: new_internal ( Arc :: clone ( & self . command ) , Arc :: clone ( & self . stderr_sender ) ) }
Terminates this process if it hasn't already, then restarts
Terminates this process if it hasn ' t already then restarts
&mut self
&mut self