pub fn register<P>(signal: c_int, pipe: P) -> Result<SigId, Error> where
P: AsRawFd + Send + Sync + 'static,
Registers a write to a self-pipe whenever there's the signal.
The ownership of pipe is taken and will be closed whenever the created action is unregistered.
Note that if you want to register the same pipe for multiple signals, there's
method on many unix socket primitives.