pub struct ProcessAllocator { /* private fields */ }
Expand description
An allocator that allocates procs by executing managed (local)
processes. ProcessAllocator is configured with a [Command
] (template)
to spawn external processes. These processes must invoke [hyperactor_mesh::bootstrap
] or
[hyperactor_mesh::bootstrap_or_die
], which is responsible for coordinating
with the allocator.
The process allocator tees the stdout and stderr of each proc to the parent process.
Implementations§
Trait Implementations§
Source§impl Allocator for ProcessAllocator
impl Allocator for ProcessAllocator
Source§type Alloc = ProcessAlloc
type Alloc = ProcessAlloc
The type of
Alloc
produced by this allocator.Source§fn allocate<'life0, 'async_trait>(
&'life0 mut self,
spec: AllocSpec,
) -> Pin<Box<dyn Future<Output = Result<ProcessAlloc, AllocatorError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn allocate<'life0, 'async_trait>(
&'life0 mut self,
spec: AllocSpec,
) -> Pin<Box<dyn Future<Output = Result<ProcessAlloc, AllocatorError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Create a new allocation. The allocation itself is generally
returned immediately (after validating parameters, etc.);
the caller is expected to respond to allocation events as
the underlying procs are incrementally allocated.
Auto Trait Implementations§
impl Freeze for ProcessAllocator
impl !RefUnwindSafe for ProcessAllocator
impl Send for ProcessAllocator
impl Sync for ProcessAllocator
impl Unpin for ProcessAllocator
impl !UnwindSafe for ProcessAllocator
Blanket Implementations§
§impl<T> AnySync for T
impl<T> AnySync for T
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
§impl<T> FutureExt for T
impl<T> FutureExt for T
§fn with_context(self, otel_cx: Context) -> WithContext<Self>
fn with_context(self, otel_cx: Context) -> WithContext<Self>
§fn with_current_context(self) -> WithContext<Self>
fn with_current_context(self) -> WithContext<Self>
Source§impl<A, M> Handler<IndexedErasedUnbound<M>> for A
impl<A, M> Handler<IndexedErasedUnbound<M>> for A
§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>
Converts
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>
Converts
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