#中断 #信号 #禁用 #无分配 #信号 #

无std 中断

跨架构工具,用于暂时禁用中断和信号

3 个版本

0.1.5 2024年2月26日
0.1.4 2023年11月2日
0.1.3 2023年10月9日
0.1.0 2023年9月18日

#238 in Unix API

Download history 647/week @ 2024-04-15 697/week @ 2024-04-22 441/week @ 2024-04-29 343/week @ 2024-05-06 756/week @ 2024-05-13 648/week @ 2024-05-20 531/week @ 2024-05-27 842/week @ 2024-06-03 770/week @ 2024-06-10 769/week @ 2024-06-17 632/week @ 2024-06-24 553/week @ 2024-07-01 478/week @ 2024-07-08 769/week @ 2024-07-15 811/week @ 2024-07-22 829/week @ 2024-07-29

2,896 每月下载量
用于 4 个crate (3 直接)

MIT/Apache

14KB
166 代码行

中断

Crates.io docs.rs CI

跨架构工具,用于暂时禁用中断和信号。

使用 disable 来使用保护器禁用中断

// interrupts may or may not be enabled
let guard = interrupts::disable();
// interrupts are disabled
drop(guard);
// interrupts are restored to the previous state

使用 without 来运行禁用中断的闭包

// interrupts may or may not be enabled
interrupts::without(|| {
    // interrupts are disabled
});
// interrupts are restored to the previous state

有关API文档,请参阅文档

  • interrupt-ref-cell (同一线程上与中断处理器或信号处理器共享数据的RefCell.)
  • interrupt-mutex (用于与中断处理器或信号处理器共享数据的互斥锁.)

许可协议

许可协议为以下之一

您可以选择。

贡献

除非您明确声明,否则根据Apache-2.0许可证定义,您有意提交的工作的所有贡献应按上述方式双许可,不附加任何额外条款或条件。

依赖关系

~1.5MB
~35K SLoC