proxygen
|
#include <ThreadLocalDetail.h>
Public Member Functions | |
size_t | getElementsCapacity () const noexcept |
void | setElementsCapacity (size_t capacity) noexcept |
Public Attributes | |
ElementWrapper * | elements {nullptr} |
std::atomic< size_t > | elementsCapacity {0} |
ThreadEntry * | next {nullptr} |
ThreadEntry * | prev {nullptr} |
ThreadEntryList * | list {nullptr} |
ThreadEntry * | listNext {nullptr} |
StaticMetaBase * | meta {nullptr} |
bool | removed_ {false} |
Per-thread entry. Each thread using a StaticMeta object has one. This is written from the owning thread only (under the lock), read from the owning thread (no lock necessary), and read from other threads (under the lock). StaticMetaBase::head_ elementsCapacity can be read from any thread on reallocate (no lock)
Definition at line 209 of file ThreadLocalDetail.h.
|
inlinenoexcept |
Definition at line 219 of file ThreadLocalDetail.h.
Referenced by folly::threadlocal_detail::StaticMetaBase::destroy(), folly::threadlocal_detail::StaticMetaBase::elementsCapacity(), folly::threadlocal_detail::StaticMeta< Tag, AccessMode >::getSlowReserveAndCache(), folly::threadlocal_detail::StaticMeta< Tag, AccessMode >::onForkChild(), folly::threadlocal_detail::StaticMetaBase::reallocate(), folly::threadlocal_detail::StaticMetaBase::reserve(), and folly::threadlocal_detail::StaticMetaBase::reserveHeadUnlocked().
|
inlinenoexcept |
Definition at line 223 of file ThreadLocalDetail.h.
Referenced by folly::threadlocal_detail::StaticMetaBase::reserve(), and folly::threadlocal_detail::StaticMetaBase::reserveHeadUnlocked().
ElementWrapper* folly::threadlocal_detail::ThreadEntry::elements {nullptr} |
Definition at line 210 of file ThreadLocalDetail.h.
Referenced by folly::ThreadLocalPtr< T, Tag, AccessMode >::Accessor::Iterator::decrementToValid(), folly::ThreadLocalPtr< T, Tag, AccessMode >::Accessor::Iterator::dereference(), folly::threadlocal_detail::StaticMetaBase::destroy(), folly::threadlocal_detail::ThreadEntryNode::eraseZero(), folly::ThreadLocalPtr< T, Tag, AccessMode >::Accessor::Iterator::incrementToValid(), folly::threadlocal_detail::StaticMeta< Tag, AccessMode >::onForkChild(), folly::threadlocal_detail::ThreadEntryNode::push_back(), folly::threadlocal_detail::StaticMetaBase::pushBackLocked(), folly::threadlocal_detail::StaticMetaBase::pushBackUnlocked(), folly::threadlocal_detail::StaticMetaBase::reallocate(), folly::threadlocal_detail::StaticMetaBase::reserve(), folly::threadlocal_detail::StaticMetaBase::reserveHeadUnlocked(), and folly::ThreadLocalPtr< T, Tag, AccessMode >::Accessor::Iterator::valid().
std::atomic<size_t> folly::threadlocal_detail::ThreadEntry::elementsCapacity {0} |
Definition at line 211 of file ThreadLocalDetail.h.
ThreadEntryList* folly::threadlocal_detail::ThreadEntry::list {nullptr} |
Definition at line 214 of file ThreadLocalDetail.h.
Referenced by folly::threadlocal_detail::StaticMeta< Tag, AccessMode >::getThreadEntrySlow().
ThreadEntry* folly::threadlocal_detail::ThreadEntry::listNext {nullptr} |
Definition at line 215 of file ThreadLocalDetail.h.
Referenced by folly::threadlocal_detail::StaticMeta< Tag, AccessMode >::getThreadEntrySlow().
StaticMetaBase* folly::threadlocal_detail::ThreadEntry::meta {nullptr} |
Definition at line 216 of file ThreadLocalDetail.h.
Referenced by folly::threadlocal_detail::StaticMeta< Tag, AccessMode >::getThreadEntrySlow(), folly::threadlocal_detail::ThreadEntryNode::initIfZero(), folly::threadlocal_detail::StaticMetaBase::onThreadExit(), and folly::threadlocal_detail::StaticMetaBase::reallocate().
ThreadEntry* folly::threadlocal_detail::ThreadEntry::next {nullptr} |
Definition at line 212 of file ThreadLocalDetail.h.
Referenced by folly::threadlocal_detail::StaticMetaBase::erase(), folly::threadlocal_detail::StaticMetaBase::push_back(), and folly::threadlocal_detail::StaticMetaBase::StaticMetaBase().
ThreadEntry* folly::threadlocal_detail::ThreadEntry::prev {nullptr} |
Definition at line 213 of file ThreadLocalDetail.h.
Referenced by folly::threadlocal_detail::StaticMetaBase::erase(), folly::threadlocal_detail::StaticMetaBase::push_back(), and folly::threadlocal_detail::StaticMetaBase::StaticMetaBase().
bool folly::threadlocal_detail::ThreadEntry::removed_ {false} |
Definition at line 217 of file ThreadLocalDetail.h.
Referenced by folly::threadlocal_detail::StaticMetaBase::pushBackLocked(), and folly::threadlocal_detail::StaticMetaBase::pushBackUnlocked().