Функция signal
pub fn signal(kind: SignalKind) -> Result<Signal>
Доступно только в Unix и при включённой функции crate
signal.Создаёт новый обработчик, который будет получать уведомления, когда текущий процесс получит указанный сигнал kind.
Эта функция создаст новый поток, привязанный к реактору по умолчанию. Поток Signal является бесконечным и будет получать уведомления при каждом получении сигнала. Дополнительную документацию можно найти непосредственно в Signal, но повторим:
- Сигналы могут объединяться сверх того, что уже делает ядро.
- После регистрации обработчика сигнала для процесса базовый обработчик сигналов libc никогда не отменяется.
Для определённого номера сигнала можно создать несколько потоков Signal. При получении сигнала все связанные каналы получат уведомление о нём.
Ошибки
- Если низкоуровневые функции C по какой-либо причине завершатся с ошибкой.
- Если предыдущая инициализация этого конкретного сигнала завершилась с ошибкой.
- Если сигнал относится к числу
signal_hook::FORBIDDEN
Паники
Эта функция вызывает панику, если текущий реактор не установлен или если флаг функции rt не включён.
MIT License
Copyright © Tokio Contributors
https://docs.rs/tokio/1.53.1/tokio/signal/unix/fn.signal.html