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