proxygen
folly::detail::LifoSemNodeRecycler< Handoff, Atom > Struct Template Reference

#include <LifoSem.h>

Public Member Functions

void operator() (LifoSemNode< Handoff, Atom > *elem) const
 

Detailed Description

template<typename Handoff, template< typename > class Atom>
struct folly::detail::LifoSemNodeRecycler< Handoff, Atom >

Definition at line 196 of file LifoSem.h.

Member Function Documentation

template<typename Handoff , template< typename > class Atom>
void folly::detail::LifoSemNodeRecycler< Handoff, Atom >::operator() ( LifoSemNode< Handoff, Atom > *  elem) const
inline

Definition at line 197 of file LifoSem.h.

References folly::detail::LifoSemNode< Handoff, Atom >::destroy(), folly::IndexedMemPool< T, NumLocalLists_, LocalListLimit_, Atom, Traits >::locateElem(), folly::detail::LifoSemRawNode< Atom >::pool(), and folly::IndexedMemPool< T, NumLocalLists_, LocalListLimit_, Atom, Traits >::recycleIndex().

197  {
198  elem->destroy();
199  auto idx = LifoSemRawNode<Atom>::pool().locateElem(elem);
201  }
uint32_t locateElem(const T *elem) const
void recycleIndex(uint32_t idx)
Gives up ownership previously granted by alloc()
static Pool & pool()
Storage for all of the waiter nodes for LifoSem-s that use Atom.

The documentation for this struct was generated from the following file: