Expand description
LockFreeHashMap
This is an implementation of the lock-free hash map created by Dr. Cliff Click.
Originally, this implementation
here
and
recently here
was created for Java, using garbage collection where necessary.
This library is a Rust implementation, using epoch-based memory management to compensate for
the lack of garbage collection.
The crossbeam
crate is used for epoch-based memory management.
For details on the hash map’s design and implementation, see the (private) [map_inner] module.
At the time of writing, other concurrent hash maps available don’t appear to allow reading and writing at the same time. This map does. Effectively, this map has the same guarantees as having a certain amount of global variables that can be changed atomically.
Structs§
- Guard
- Re-export
crossbeam::epoch::pin()
and its return type for convenience. A guard that keeps the current thread pinned. - Lock
Free Hash Map - Scope
- Re-export
crossbeam::scope()
and its return type for convenience.