proxygen
|
#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.
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) |
#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.
Definition at line 33 of file AtomicHashArray.h.