pub struct ProcessOptions {
pub working_dir: String,
}Expand description
Options for a supervised child process.
Ported from overseer.Options as returned by Go’s processOptions.
Go sets LineBufferSize: 1 << 20 because ShinyTrinkets/overseer
scans child output with a bufio.Scanner whose default token limit
is 64 KiB – a line longer than that stops the stream for good, and
every later write by the process fails with EPIPE. RetryTimes,
Buffered, and Streaming configure overseer’s restart/buffering
behaviour, which belongs to supervise_all’s not-yet-ported restart
orchestration rather than to a single child’s streaming, so they have
no field here.
new_cmd’s line reader has no equivalent limit to configure: it
reads with std::io::BufRead::read_until, which grows its buffer to
fit whatever is on the line instead of capping it, so arbitrarily long
lines stream through whole by construction.
Fields§
§working_dir: StringTrait Implementations§
Source§impl Clone for ProcessOptions
impl Clone for ProcessOptions
Source§fn clone(&self) -> ProcessOptions
fn clone(&self) -> ProcessOptions
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreAuto Trait Implementations§
impl Freeze for ProcessOptions
impl RefUnwindSafe for ProcessOptions
impl Send for ProcessOptions
impl Sync for ProcessOptions
impl Unpin for ProcessOptions
impl UnsafeUnpin for ProcessOptions
impl UnwindSafe for ProcessOptions
Blanket Implementations§
§impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
§impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
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
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
impl<A, B, T> HttpServerConnExec<A, B> for Twhere
B: Body,
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more