[−][src]Struct actix::registry::SystemRegistry
System wide actors registry
System registry serves same purpose as Registry, except it is shared across all arbiters.
Example
use actix::prelude::*; #[derive(Message)] struct Ping; #[derive(Default)] struct MyActor1; impl Actor for MyActor1 { type Context = Context<Self>; } impl actix::Supervised for MyActor1 {} impl SystemService for MyActor1 { fn service_started(&mut self, ctx: &mut Context<Self>) { println!("Service started"); } } impl Handler<Ping> for MyActor1 { type Result = (); fn handle(&mut self, _: Ping, ctx: &mut Context<Self>) { println!("ping"); } } struct MyActor2; impl Actor for MyActor2 { type Context = Context<Self>; fn started(&mut self, _: &mut Context<Self>) { let act = MyActor1::from_registry(); act.do_send(Ping); } } fn main() { // initialize system let code = System::run(|| { // Start MyActor2 let addr = MyActor2.start(); }); }
Methods
impl SystemRegistry
[src]
pub fn get<A: SystemService + Actor<Context = Context<A>>>(&mut self) -> Addr<A>
[src]
Return address of the service. If service actor is not running it get started in the system.
pub fn query<A: SystemService + Actor<Context = Context<A>>>(
&self
) -> Option<Addr<A>>
[src]
&self
) -> Option<Addr<A>>
Check if actor is in registry, if so, return its address
pub fn set<A: SystemService + Actor<Context = Context<A>>>(addr: Addr<A>)
[src]
Add new actor to the registry by address, panic if actor is already running
Trait Implementations
Auto Trait Implementations
impl Send for SystemRegistry
impl !Sync for SystemRegistry
Blanket Implementations
impl<T> From for T
[src]
impl<T, U> Into for T where
U: From<T>,
[src]
U: From<T>,
impl<T, U> TryFrom for T where
U: Into<T>,
[src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
[src]
impl<T> Borrow for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> Any for T where
T: 'static + ?Sized,
[src]
T: 'static + ?Sized,
impl<T> BorrowMut for T where
T: ?Sized,
[src]
T: ?Sized,
fn borrow_mut(&mut self) -> &mut T
[src]
impl<T, U> TryInto for T where
U: TryFrom<T>,
[src]
U: TryFrom<T>,
type Error = <U as TryFrom<T>>::Error
The type returned in the event of a conversion error.