5 个版本
| 0.1.5 | 2023 年 4 月 14 日 |
|---|---|
| 0.1.4 | 2023 年 4 月 13 日 |
#724 in 并发
每月 73 次下载
15KB
413 行
Tucan:一个具有垃圾回收的简单互斥器
Tucan 是一个非常基本的具有垃圾回收功能的互斥器。它添加了一个 Intern 特征,允许您将任何实现了 Hash、Send、Sync 和 Eq 的类型进行互斥。互斥元素的关键字称为 Interned,它们围绕一个 Arc<T> 进行包装。它们实现了 Deref 为 T 和 Clone。当调用 gc() 函数时,tucan 会查找所有不是由任何 Interned 引用的互斥器条目,并将它们删除。
注意
Tucan 使用 sip-hash 来检查两个值是否相同。因此,如果两个值具有相同的类型并且具有碰撞的哈希值,则它们将被互斥为相同的值。这意味着可能会发生冲突。这是为了保持互斥器简单快速,并且对可以互斥的类型要求非常宽松而有意识的设计决策。
依赖项
~0.6–6MB
~17K SLoC