PMDK C++ bindings  1.11.1
This is the C++ bindings documentation for PMDK's libpmemobj.
Classes | Namespaces
concurrent_hash_map.hpp File Reference

A persistent version of concurrent hash map implementation Ref: https://arxiv.org/abs/1509.02235. More...

#include <libpmemobj++/detail/atomic_backoff.hpp>
#include <libpmemobj++/detail/common.hpp>
#include <libpmemobj++/detail/pair.hpp>
#include <libpmemobj++/detail/template_helpers.hpp>
#include <libpmemobj++/defrag.hpp>
#include <libpmemobj++/make_persistent.hpp>
#include <libpmemobj++/mutex.hpp>
#include <libpmemobj++/p.hpp>
#include <libpmemobj++/persistent_ptr.hpp>
#include <libpmemobj++/transaction.hpp>
#include <libpmemobj++/detail/persistent_pool_ptr.hpp>
#include <libpmemobj++/shared_mutex.hpp>
#include <libpmemobj++/detail/enumerable_thread_specific.hpp>
#include <atomic>
#include <cassert>
#include <functional>
#include <initializer_list>
#include <iterator>
#include <memory>
#include <mutex>
#include <thread>
#include <type_traits>
#include <utility>
#include <vector>

Go to the source code of this file.

Classes

struct  std::hash< pmem::obj::p< T > >
 Specialization of std::hash for p<T> More...
 
class  pmem::obj::concurrent_hash_map< Key, T, Hash, KeyEqual, MutexType, ScopedLockType >
 Persistent memory aware implementation of Intel TBB concurrent_hash_map. More...
 
class  pmem::obj::concurrent_hash_map< Key, T, Hash, KeyEqual, MutexType, ScopedLockType >::bucket_accessor
 Bucket accessor is to find, rehash, acquire a lock, and access a bucket. More...
 
class  pmem::obj::concurrent_hash_map< Key, T, Hash, KeyEqual, MutexType, ScopedLockType >::serial_bucket_accessor
 Serial bucket accessor used to access bucket in a serial operations. More...
 
class  pmem::obj::concurrent_hash_map< Key, T, Hash, KeyEqual, MutexType, ScopedLockType >::const_accessor
 Combines data access, locking, and garbage collection. More...
 
class  pmem::obj::concurrent_hash_map< Key, T, Hash, KeyEqual, MutexType, ScopedLockType >::accessor
 Allows write access to elements and combines data access, locking, and garbage collection. More...
 
class  pmem::obj::concurrent_hash_map< Key, T, Hash, KeyEqual, MutexType, ScopedLockType >::mutex_vector
 Vector of locks to be unlocked at the destruction time. More...
 

Namespaces

 pmem
 Persistent memory namespace.
 
 pmem::obj
 Main libpmemobj namespace.
 

Detailed Description

A persistent version of concurrent hash map implementation Ref: https://arxiv.org/abs/1509.02235.