crates.io
Async signal handling async-signal Asynchronous signal handling. This crate provides the Signals type, which can be used to listen for POSIX signals asynchronously. It can be seen as an asynchronous version of signal_hook::iterator::Signals . Implementation On unix , this crate uses the signal_hook_registry crate to register...
Crate
v0.2.14
2026-04-07
docs.rs
An implementation of an asynchronous Unix signal handling backed futures.
Crate
v0.2.9
2020-02-05
docs.rs
...macOS.) The next best thing is waiting for the SIGCHLD signal, but Unix signal handling is complicated and error-prone. This crate implements SIGCHLD handling using signal_hook internally, for compatibility with other Rust signal handling libraries. It allows any number of threads to wait for SIGCHLD with an optional...
Crate
v0.2.5
2026-09-02
docs.rs
Unix signal handling signal-hook Library for safe and correct Unix signal handling in Rust. Unix signals are inherently hard to handle correctly, for several reasons: They are a global resource. If a library wants to set its own signal handlers, it risks disturbing some other library. It is possible...
Crate
v0.4.4
2026-04-04
docs.rs
...Global error handling. Xlib has a single global error hook. This is reminiscent of the Unix signal handling API, in that it makes it difficult to create well-modularized programs since they will fight with each-other over the error handlers. However, unlike the signal handling API, there is no...
Crate
v0.2.5
2026-04-20
docs.rs
...Signal handling caveat: If the process is killed abruptly (e.g. SIGINT via Ctrl+C, SIGKILL ), the Drop implementation may not run and the progress bar won't be cleared. Terminals like Ghostty mitigate this with a ~15-second auto-clear timeout, but for immediate cleanup, applications should install their...
Crate
v4.2.0
2026-03-04
docs.rs
...See Nats docs signal Since 0.5 Adds shutdown_on_signal and shutdown_on_ctrl_c to the scheduler. Both shut the system down (stop the scheduler and remove all the tasks) when a signal is received. As this leverages the signal handling from Tokio, this is only available on...
Crate
v0.15.1
2025-10-28
crates.io
...Graceful shutdown lambda_runtime offers a helper to simplify configuring graceful shutdown signal handling, spawn_graceful_shutdown_handler() . This requires the graceful-shutdown feature flag and only supports Unix systems. You can use it by passing a FnOnce closure that returns an async block. That async block will be executed...
Crate
v1.4.0
2026-09-02
docs.rs
...Some of Python's asyncio features, like proper signal handling, require control over the main thread, which doesn't always play well with Rust. Luckily, Rust's event loops are pretty flexible and don't need control over the main thread, so in pyo3-async-runtimes , we decided the best...
Crate
v0.29.0
2026-08-28
docs.rs
...Some of Python's asyncio features, like proper signal handling, require control over the main thread, which doesn't always play well with Rust. Luckily, Rust's event loops are pretty flexible and don't need control over the main thread, so in pyo3-async-runtimes , we decided the best...
Crate
v0.29.0
2026-08-28
detegr.github.io
...send(()).expect("Could not send signal on channel.")) .expect("Error setting Ctrl-C handler"); println!("Waiting for Ctrl-C..."); rx.recv().expect("Could not receive from channel."); println!("Got it! Exiting..."); } Try the example yourself cargo build --examples && target/debug/examples/readme_example Handling SIGTERM and SIGHUP Add CtrlC to...
Crate
v3.5.2
2026-02-10
docs.rs
...let auto_restart_abort = auto_restart.abort_handle(); wx.config.on_action(move |mut action| { // if we get Ctrl-C on the Watchexec instance, we quit if action.signals().any(|sig| sig == Signal::Interrupt) { eprintln!("[Quitting...]"); auto_restart_abort.abort(); action.quit_gracefully(Signal::ForceStop, Duration::ZERO); return action; } // if...
Crate
v8.4.1
2026-09-03
docs.rs
...Use with Polar Signals Cloud Polar Signals Cloud allows continuously collecting heap profiling data, so you always have the right profiling data available, and don't need to search for the right data, you already have it! Polar Signals Cloud supports anything in the pprof format, so a process exposing...
Crate
v0.9.0
2026-06-22
docs.rs
...if false , redirects stdin/stdout/stderr to /dev/null setsid() - Creates a new session and sets the process group ID waitpid(pid) - Waits for child process to change state (blocking; returns raw status; retries on signals) waitpid_nohang(pid) - Checks child status without blocking (returns Option<status> ; for supervisors/polling...
Crate
v0.10.0
2026-07-18
dcuddeback.github.io
...To implement a handle for generic serial ports without requiring a proliferation of generics, one can define the higher-level protocol in a trait: struct Handle<P: SerialPort> { port: P, } impl<P: SerialPort> Handle<P> { fn new(port: P) -> Self { Handle { port: port } } } impl<P: SerialPort> Greet for Handle<P...
Crate
v0.4.0
2017-08-02
docs.rs
...optional ( events feature), UNIX only Mio event readiness polling, waking up poller optional ( events feature), UNIX only signal-hook signal-hook is used to handle terminal resize SIGNAL with Mio. optional ( events feature),UNIX only winapi Used for low-level windows system calls which ANSI codes can't replace windows...
Crate
v0.29.0
2025-04-05
docs.rs
...the terms "quiet NaN" and "signaling NaN"; "signaling" was too long to put in a struct/crate name, so "noisy" is used instead, being the opposite of "quiet." The standard types defined in noisy_float::types follow the principle demonstrated by Rust's handling of integer overflow: a bad arithmetic...
Crate
v0.2.1
2026-01-06
docs.rs
...That makes it safe to send signals concurrently. Windows has actually always supported this, by preventing PID reuse while there are still open handles to a child process. This library wraps std::process::Child for concurrent use, backed by these APIs. Compatibility note: The libc crate doesn't currently support...
Crate
v1.1.2
2026-09-03
gtk-rs.org
...A panic in a closure that handles signals or in any other closure passed to a gtk function will abort the process. Features Library versions By default this crate provides only GTK 3.22.30 APIs. You can access additional functionality by selecting one of the v3_24 , etc. features...
Crate
v0.19.0
2026-09-08
docs.rs
...CommandWrap::with_new("watch", |command| { command.arg("ls"); }) .wrap(ProcessSession) .spawn()?; Reset signal mask Platforms: POSIX (Linux, Mac, BSDs...) Feature: reset-sigmask This resets the signal mask of the process instead of inheriting it from the parent. CommandWrap::with_new("watch", |command| { command.arg("ls"); }) .wrap(ResetSigmask) .spawn()?; Creation flags...
Crate
v10.0.0
2026-08-24