1 个不稳定版本

0.1.0 2023年10月9日

#335 in 无标准库

MIT 许可证

8KB
145

编译时强制锁顺序

此库包含类型和特性,以确保在编译时锁被正确顺序获取。

致谢

受 Fuchsia 的 Fuchsialock-orderinglock-sequence 库的启发。


lib.rs:

编译时强制锁顺序

此库包含类型和特性,以确保同时持有的锁按正确顺序获取。这允许代码作者在编译时验证其代码不存在死锁机会。

这是通过使用 [relation] crate 中的特性和表示不同锁级别的标记类型之间的顺序定义来实现的。核心逻辑位于 LockedAt 类型;它使用特性界限来确保任何锁的获取都遵守这些顺序。

无运行时依赖