proxygen
AtomicHashArray.h File Reference
#include <atomic>
#include <boost/iterator/iterator_facade.hpp>
#include <boost/noncopyable.hpp>
#include <folly/ThreadCachedInt.h>
#include <folly/Utility.h>
#include <folly/hash/Hash.h>
#include <folly/AtomicHashArray-inl.h>

Go to the source code of this file.

Classes

struct  folly::AtomicHashArrayLinearProbeFcn
 
struct  folly::AtomicHashArrayQuadraticProbeFcn
 
class  folly::AtomicHashMap< KeyT, ValueT, HashFcn, EqualFcn, Allocator, ProbeFcn, KeyConvertFcn >
 
class  folly::AtomicHashArray< KeyT, ValueT, HashFcn, EqualFcn, Allocator, ProbeFcn, KeyConvertFcn >
 
struct  folly::AtomicHashArray< KeyT, ValueT, HashFcn, EqualFcn, Allocator, ProbeFcn, KeyConvertFcn >::aha_iterator< KeyT, ValueT, HashFcn, EqualFcn, Allocator, ProbeFcn, KeyConvertFcn >
 
struct  folly::AtomicHashArray< KeyT, ValueT, HashFcn, EqualFcn, Allocator, ProbeFcn, KeyConvertFcn >::Deleter
 
struct  folly::AtomicHashArray< KeyT, ValueT, HashFcn, EqualFcn, Allocator, ProbeFcn, KeyConvertFcn >::Config
 
struct  folly::AtomicHashArray< KeyT, ValueT, HashFcn, EqualFcn, Allocator, ProbeFcn, KeyConvertFcn >::SimpleRetT
 

Namespaces

 folly
 —— Concurrent Priority Queue Implementation ——
 
 folly::detail
 

Macros

#define FOLLY_ATOMICHASHARRAY_H_
 

Functions

template<typename NotKeyT , typename KeyT >
void folly::detail::checkLegalKeyIfKeyTImpl (NotKeyT, KeyT, KeyT, KeyT)
 
template<typename KeyT >
void folly::detail::checkLegalKeyIfKeyTImpl (KeyT key_in, KeyT emptyKey, KeyT lockedKey, KeyT erasedKey)
 

Macro Definition Documentation

#define FOLLY_ATOMICHASHARRAY_H_

AtomicHashArray is the building block for AtomicHashMap. It provides the core lock-free functionality, but is limited by the fact that it cannot grow past its initialization size and is a little more awkward (no public constructor, for example). If you're confident that you won't run out of space, don't mind the awkardness, and really need bare-metal performance, feel free to use AHA directly.

Check out AtomicHashMap.h for more thorough documentation on perf and general pros and cons relative to other hash maps.

Author
Spencer Ahrens sahre.nosp@m.ns@f.nosp@m.b.com
Jordan DeLong delon.nosp@m.g.j@.nosp@m.fb.co.nosp@m.m

Definition at line 33 of file AtomicHashArray.h.