xenium
|
A ForwardIterator to safely iterate the hash-map. More...
#include <harris_michael_hash_map.hpp>
A ForwardIterator to safely iterate the hash-map.
Iterators are not invalidated by concurrent insert/erase operations. However, conflicting erase operations can have a negative impact on the performance when advancing the iterator, because it may be necessary to rescan the bucket's list to find the next element.
Note: This iterator class does not provide multi-pass guarantee as a == b
does not imply ++a == ++b
.
Note: Each iterator internally holds two guard_ptr
instances. This has to be considered when using a reclamation scheme that requires per-instance resources like hazard_pointer
or hazard_eras
. It is therefore highly recommended to use prefix increments wherever possible.