1 个稳定版本
5.0.0 | 2022年1月14日 |
---|
#848 在 并发
94KB
2K SLoC
DashMap
在 Rust 中实现的高速并发映射。
DashMap 是 Rust 中并发关联数组/哈希表的一个实现。
DashMap 试图实现一个易于使用的 API,类似于 std::collections::HashMap
,并对并发处理进行了一些轻微的修改。
DashMap 试图非常简单易用,并且可以直接替换 RwLock<HashMap<K, V>>
。为了实现这些目标,所有方法都接受 &self
而不是修改接受 &mut self
的方法。这使得您可以将 DashMap 放入 Arc<T>
中,并在多个线程之间共享它,同时仍然能够对其进行修改。
DashMap 在性能上投入了大量的努力,并力求尽可能快。如果您有任何建议或技巧,请毫不犹豫地提出问题或提交 PR。
Cargo 功能
-
serde
- 启用 serde 支持。 -
raw-api
- 启用不稳定的原始分片 API。 -
rayon
- 启用 rayon 支持。
贡献
DashMap 欣然接受贡献!请不要犹豫,提出问题或 PR。
我会在有时间的时候查看。
话虽如此,我目前还没有为开源工作而付费。这意味着我的时间是有限的,我的工作是在我的个人生活之后。
性能
可以在这里找到包括 DashMap 的完整基准测试套件。
特别感谢
许可证
本项目的许可证为 MIT。
依赖项
~0.5–1.3MB
~23K SLoC