#mutex #lock #parallel #locking

lock_many

一次性重试式锁定多个互斥锁

2 个版本

0.1.1 2022年2月17日
0.1.0 2022年2月16日

#66 in #locking

MIT 许可协议

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