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