proxygen
|
#include <LifoSem.h>
Public Types | |
typedef folly::IndexedMemPool< LifoSemRawNode< Atom >, 32, 200, Atom > | Pool |
Public Member Functions | |
bool | isShutdownNotice () const |
void | clearShutdownNotice () |
void | setShutdownNotice () |
Static Public Member Functions | |
static Pool & | pool () |
Storage for all of the waiter nodes for LifoSem-s that use Atom. More... | |
Public Attributes | |
std::aligned_storage< sizeof(void *), alignof(void *)>::type | raw |
uint32_t | next |
LifoSemRawNode is the actual pooled storage that backs LifoSemNode for user-specified Handoff types. This is done so that we can have a large static IndexedMemPool of nodes, instead of per-type pools
typedef folly::IndexedMemPool<LifoSemRawNode<Atom>, 32, 200, Atom> folly::detail::LifoSemRawNode< Atom >::Pool |
|
inline |
|
inline |
|
static |
Storage for all of the waiter nodes for LifoSem-s that use Atom.
Referenced by folly::detail::LifoSemBase< BatonType, Atom >::allocateNode(), folly::detail::LifoSemBase< BatonType, Atom >::idxToNode(), folly::detail::LifoSemBase< BatonType, Atom >::nodeToIdx(), and folly::detail::LifoSemNodeRecycler< Handoff, Atom >::operator()().
|
inline |
uint32_t folly::detail::LifoSemRawNode< Atom >::next |
The IndexedMemPool index of the next node in this chain, or 0 if none. This will be set to uint32_t(-1) if the node is being posted due to a shutdown-induced wakeup
Definition at line 129 of file LifoSem.h.
Referenced by folly::detail::LifoSemBase< BatonType, Atom >::tryRemoveNode().
std::aligned_storage<sizeof(void*), alignof(void*)>::type folly::detail::LifoSemRawNode< Atom >::raw |