#actix-actor #actor #actix #lifecycle #terminate #signal

actix-signal

Manage the lifecycle of an actix actor with its address

3 releases (breaking)

0.3.0 Feb 5, 2024
0.2.0 Mar 18, 2022
0.1.1 Mar 18, 2022
0.1.0 Jul 22, 2021

#786 in Asynchronous

Download history 115/week @ 2024-07-23 32/week @ 2024-07-30 118/week @ 2024-08-06 93/week @ 2024-08-13 8/week @ 2024-08-20 11/week @ 2024-08-27 39/week @ 2024-09-03 30/week @ 2024-09-10 111/week @ 2024-09-17 250/week @ 2024-09-24 249/week @ 2024-10-01 156/week @ 2024-10-08 84/week @ 2024-10-15 232/week @ 2024-10-22 64/week @ 2024-10-29 164/week @ 2024-11-05

555 downloads per month

MIT license

10KB
55 lines

actix-signal

crates.io Documentation

Manage the lifecycle of an actix actor with its address.

If you want to stop/terminate an actor, you call ActorContext::stop or ActorContext::terminate within its execution context.

However, sometimes you have access to its address only. This crate adds a bunch of methods to the address so that you may stop or terminate the actor outside its running context.

Minimum supported rust version: 1.50.0

Get Started

Add the following line to your Cargo.toml.

actix-signal = { version = "0.1", features = ["derive"] }

Example

use actix::{Actor, Context};
use actix_signal::SignalHandler;

#[derive(SignalHandler)]
struct MyActor;

impl Actor for MyActor {
    type Context = Context<Self>;
}

let actor = MyActor;
let addr = actor.start();

addr.stop();        // Stop the actor
addr.terminate();   // Terminate the actor

Feature flags

derive - Provide #[derive(SignalHandler)] proc-macro.

License

MIT

Dependencies

~4–13MB
~143K SLoC