2 个版本
0.1.1 | 2022年2月17日 |
---|---|
0.1.0 | 2022年2月16日 |
#66 in #locking
10KB
179 行
Rust 包用于一次性锁定多个锁。实现方式遵循 gcc 的 libstdc++: https://github.com/gcc-mirror/gcc/blob/master/libstdc%2B%2B-v3/include/std/mutex#L635-L682
实现的算法来自 https://howardhinnant.github.io/dining_philosophers.html 的“智能且礼貌”算法。
请注意,在特定的锁竞争模式下,此实现理论上可能会出现死锁。请尽量避免这些模式 :)
特性
唯一特性是 arrayvec。
依赖项
~17KB