Struct elfo_core::ActorGroup

source ·
pub struct ActorGroup<R, C> { /* private fields */ }

Implementations§

source§

impl ActorGroup<(), ()>

source

pub fn new() -> Self

source§

impl<R, C> ActorGroup<R, C>

source

pub fn config<C1: Config>(self) -> ActorGroup<R, C1>

source

pub fn restart_policy(self, policy: RestartPolicy) -> Self

The behaviour on actor termination.

RestartPolicy::never is used by default.

source

pub fn termination_policy(self, policy: TerminationPolicy) -> Self

The behaviour on the Terminate message.

TerminationPolicy::closing is used by default.

source

pub fn router<R1: Router<C>>(self, router: R1) -> ActorGroup<R1, C>

Installs a router.

source

pub fn stop_order(self, stop_order: i8) -> Self

Specifies the order of stopping among other groups.

Actors in groups with lower values are stopped first. Actors in groups with higher values start stopping when all actors in groups with lower values are stopped or timeout is reached. It also means that a lot of different values of this parameter among groups can lead to longer shutdown time of the node. In some environment (e.g. systemd) there is a hard limit on the shutdown time, thus the node can be forcibly terminated (by SIGKILL) before all actors are stopped gracefully.

0 by default.

§Availability

This API is marked as unstable and is only available when the unstable crate feature is enabled. This comes with no stability guarantees, and could be changed or removed at any time.

source

pub fn exec<X, O, ER>(self, exec: X) -> Blueprint
where R: Router<C>, X: Fn(Context<C, R::Key>) -> O + Send + Sync + 'static, O: Future<Output = ER> + Send + 'static, ER: ExecResult, C: Config,

Builds the group with the specified executor function.

Trait Implementations§

source§

impl<R: Debug, C: Debug> Debug for ActorGroup<R, C>

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more

Auto Trait Implementations§

§

impl<R, C> Freeze for ActorGroup<R, C>
where R: Freeze,

§

impl<R, C> RefUnwindSafe for ActorGroup<R, C>

§

impl<R, C> Send for ActorGroup<R, C>
where R: Send, C: Send,

§

impl<R, C> Sync for ActorGroup<R, C>
where R: Sync, C: Sync,

§

impl<R, C> Unpin for ActorGroup<R, C>
where R: Unpin, C: Unpin,

§

impl<R, C> UnwindSafe for ActorGroup<R, C>
where R: UnwindSafe, C: UnwindSafe,

Blanket Implementations§

source§

impl<T> Any for T
where T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

source§

impl<T> Instrument for T

source§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
source§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
source§

impl<T, U> Into<U> for T
where U: From<T>,

source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

§

type Error = Infallible

The type returned in the event of a conversion error.
source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
source§

impl<T> WithSubscriber for T

source§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
source§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more