pub struct AgentRunner { /* private fields */ }Expand description
Runner for managing multiple concurrent agent executions
Implementations§
Source§impl AgentRunner
impl AgentRunner
Sourcepub fn event_sender(&self) -> Sender<AgentEvent>
pub fn event_sender(&self) -> Sender<AgentEvent>
Get a clone of the event sender for spawning agents
Sourcepub async fn spawn(&mut self, config: SpawnConfig) -> Result<()>
pub async fn spawn(&mut self, config: SpawnConfig) -> Result<()>
Spawn an agent and track its handle
Sourcepub async fn recv_event(&mut self) -> Option<AgentEvent>
pub async fn recv_event(&mut self) -> Option<AgentEvent>
Receive the next event (blocks until available)
Sourcepub fn try_recv_event(&mut self) -> Option<AgentEvent>
pub fn try_recv_event(&mut self) -> Option<AgentEvent>
Try to receive an event without blocking
Sourcepub async fn wait_all(&mut self) -> Vec<AgentResult>
pub async fn wait_all(&mut self) -> Vec<AgentResult>
Wait for all spawned agents to complete
Sourcepub fn active_count(&self) -> usize
pub fn active_count(&self) -> usize
Check how many agents are still running
Auto Trait Implementations§
impl Freeze for AgentRunner
impl RefUnwindSafe for AgentRunner
impl Send for AgentRunner
impl Sync for AgentRunner
impl Unpin for AgentRunner
impl UnwindSafe for AgentRunner
Blanket Implementations§
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
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§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