[−][src]Trait process_control::ChildExt
Extensions to Child
for easily terminating processes.
For more information, see the module-level documentation.
Associated Types
type ExitStatusTimeout: 'a + Timeout<Result = ExitStatus>
[src]
The type returned by with_timeout
.
type OutputTimeout: Timeout<Result = Output>
[src]
The type returned by with_output_timeout
.
Required methods
pub fn terminator(&self) -> Result<Terminator>
[src]
Creates an instance of Terminator
for this process.
Examples
use std::process::Command; use process_control::ChildExt; let process = Command::new("echo").spawn()?; let terminator = process.terminator()?;
#[must_use]pub fn with_timeout(
&'a mut self,
time_limit: Duration
) -> Self::ExitStatusTimeout
[src]
&'a mut self,
time_limit: Duration
) -> Self::ExitStatusTimeout
Creates an instance of Timeout
that yields ExitStatus
for this
process.
This method parallels Child::wait
when the process must finish
within a time limit.
Examples
use std::process::Command; use std::time::Duration; use process_control::ChildExt; use process_control::Timeout; let exit_status = Command::new("echo") .spawn()? .with_timeout(Duration::from_secs(1)) .terminating() .wait()? .expect("process timed out"); assert!(exit_status.success());
#[must_use]pub fn with_output_timeout(self, time_limit: Duration) -> Self::OutputTimeout
[src]
Creates an instance of Timeout
that yields Output
for this
process.
This method parallels Child::wait_with_output
when the process must
finish within a time limit.
Examples
use std::process::Command; use std::time::Duration; use process_control::ChildExt; use process_control::Timeout; let output = Command::new("echo") .spawn()? .with_output_timeout(Duration::from_secs(1)) .terminating() .wait()? .expect("process timed out"); assert!(output.status.success());
Implementations on Foreign Types
impl<'a> ChildExt<'a> for Child
[src]
type ExitStatusTimeout = ExitStatusTimeout<'a>
type OutputTimeout = OutputTimeout
pub fn terminator(&self) -> Result<Terminator>
[src]
pub fn with_timeout(
&'a mut self,
time_limit: Duration
) -> Self::ExitStatusTimeout
[src]
&'a mut self,
time_limit: Duration
) -> Self::ExitStatusTimeout