3 unstable releases
0.2.1 | Feb 23, 2020 |
---|---|
0.2.0 | Feb 23, 2020 |
0.1.0 | Feb 23, 2020 |
#920 in Unix APIs
6KB
65 lines
signal-msg
Handle UNIX process signals with a shared channel (uses simple-signal)
About
This project aims to make simple signal handling even simpler: just use
messages. Since passing objects into an anonymous function signal handler can
get tricky, signal-msg
offers an alternative approach of listening for
signals on a receiver.
This library was created for ease of use when setting up examples that needed a quick and easy setup for signal handling, providing a message-based solution around the simple-signal library. A more robust (if also more verbose) solution is possible when using the signal-hook library.
Similar functionality to signal-msg is provided by the signal-notify and chan-signal libraries (note, though, that the latter is deprecated).)
Usage
use signal_msg::{self, SignalReceiver, SignalSender};
fn main() {
let (signal_sender, signal_receiver) = signal_msg::new();
signal_sender.prepare_signals();
println!("Waiting for a signal...");
let sig = signal_receiver.listen();
println!("Got signal: {:?}", sig.unwrap());
}
Credits
The project logo is derived from the "signpost" icon in the motorway icon set by Freepik.
License
Copyright © 2020, Oxur Group
MIT License
Dependencies
~52KB