Struct actix::Arbiter [−][src]
pub struct Arbiter { /* fields omitted */ }Event loop controller
Arbiter controls event loop in it's thread. Each arbiter runs in separate
thread. Arbiter provides several api for event loop access. Each arbiter
can belongs to specific System actor.
By default, a panic in an Arbiter does not stop the rest of the System,
unless the panic is in the System actor. Users of Arbiter can opt into
shutting down the system on panic by using Arbiter::builder() and enabling
stop_system_on_panic.
Methods
impl Arbiter[src]
impl Arbiterpub fn builder() -> Builder[src]
pub fn builder() -> BuilderSpawn new thread and run event loop in spawned thread. Returns address of newly created arbiter. Does not stop the system on panic.
pub fn new<T: Into<String>>(name: T) -> Addr<Arbiter>[src]
pub fn new<T: Into<String>>(name: T) -> Addr<Arbiter>Spawn new thread and run event loop in spawned thread. Returns address of newly created arbiter. Does not stop the system on panic.
pub fn name() -> String[src]
pub fn name() -> StringReturns current arbiter's name
pub fn current() -> Addr<Arbiter>[src]
pub fn current() -> Addr<Arbiter>Returns current arbiter's address
pub fn registry() -> Registry[src]
pub fn registry() -> RegistryThis function returns arbiter's registry,
pub fn spawn<F>(future: F) where
F: Future<Item = (), Error = ()> + 'static, [src]
pub fn spawn<F>(future: F) where
F: Future<Item = (), Error = ()> + 'static, Executes a future on the current thread.
pub fn spawn_fn<F, R>(f: F) where
F: FnOnce() -> R + 'static,
R: IntoFuture<Item = (), Error = ()> + 'static, [src]
pub fn spawn_fn<F, R>(f: F) where
F: FnOnce() -> R + 'static,
R: IntoFuture<Item = (), Error = ()> + 'static, Executes a future on the current thread.
pub fn start<A, F>(f: F) -> Addr<A> where
A: Actor<Context = Context<A>>,
F: FnOnce(&mut A::Context) -> A + Send + 'static, [src]
pub fn start<A, F>(f: F) -> Addr<A> where
A: Actor<Context = Context<A>>,
F: FnOnce(&mut A::Context) -> A + Send + 'static, Start new arbiter and then start actor in created arbiter.
Returns Addr<Syn, A> of created actor.
Trait Implementations
impl Actor for Arbiter[src]
impl Actor for Arbitertype Context = Context<Self>
Actor execution context type
fn started(&mut self, ctx: &mut Self::Context)[src]
fn started(&mut self, ctx: &mut Self::Context)Method is called when actor get polled first time.
fn stopping(&mut self, ctx: &mut Self::Context) -> Running[src]
fn stopping(&mut self, ctx: &mut Self::Context) -> RunningMethod is called after an actor is in Actor::Stopping state. There could be several reasons for stopping. Context::stop get called by the actor itself. All addresses to current actor get dropped and no more evented objects left in the context. Read more
fn stopped(&mut self, ctx: &mut Self::Context)[src]
fn stopped(&mut self, ctx: &mut Self::Context)Method is called after an actor is stopped, it can be used to perform any needed cleanup work or spawning more actors. This is final state, after this call actor get dropped. Read more
fn start(self) -> Addr<Self> where
Self: Actor<Context = Context<Self>>, [src]
fn start(self) -> Addr<Self> where
Self: Actor<Context = Context<Self>>, Start new asynchronous actor, returns address of newly created actor. Read more
fn start_default() -> Addr<Self> where
Self: Actor<Context = Context<Self>> + Default, [src]
fn start_default() -> Addr<Self> where
Self: Actor<Context = Context<Self>> + Default, Start new asynchronous actor, returns address of newly created actor.
fn create<F>(f: F) -> Addr<Self> where
Self: Actor<Context = Context<Self>>,
F: FnOnce(&mut Context<Self>) -> Self + 'static, [src]
fn create<F>(f: F) -> Addr<Self> where
Self: Actor<Context = Context<Self>>,
F: FnOnce(&mut Context<Self>) -> Self + 'static, Use create method, if you need Context object during actor initialization. Read more
impl Drop for Arbiter[src]
impl Drop for Arbiterimpl Handler<StopArbiter> for Arbiter[src]
impl Handler<StopArbiter> for Arbitertype Result = ()
The type of value that this handle will return
fn handle(&mut self, msg: StopArbiter, _: &mut Context<Self>)[src]
fn handle(&mut self, msg: StopArbiter, _: &mut Context<Self>)Method is called for every message received by this Actor
impl<A> Handler<StartActor<A>> for Arbiter where
A: Actor<Context = Context<A>>, [src]
impl<A> Handler<StartActor<A>> for Arbiter where
A: Actor<Context = Context<A>>, type Result = Addr<A>
The type of value that this handle will return
fn handle(&mut self, msg: StartActor<A>, _: &mut Context<Self>) -> Addr<A>[src]
fn handle(&mut self, msg: StartActor<A>, _: &mut Context<Self>) -> Addr<A>Method is called for every message received by this Actor
impl<I: Send, E: Send> Handler<Execute<I, E>> for Arbiter[src]
impl<I: Send, E: Send> Handler<Execute<I, E>> for Arbiter