Zero  0.1.0
Public Member Functions | Private Attributes | List of all members
zero::buffer_pool::FreeListHighContention Class Reference

#include <buffer_pool_free_list.hpp>

Inheritance diagram for zero::buffer_pool::FreeListHighContention:
zero::buffer_pool::FreeList

Public Member Functions

 FreeListHighContention (BufferPool *bufferpool, const sm_options &options)
 
virtual void addFreeBufferpoolFrame (bf_idx freeFrame) final
 
virtual bool grabFreeBufferpoolFrame (bf_idx &freeFrame) final
 
virtual bf_idx getCount () final
 
- Public Member Functions inherited from zero::buffer_pool::FreeList
 FreeList (BufferPool *bufferpool, const sm_options &options)
 

Private Attributes

rigtorp::MPMCQueue< bf_idxlist
 
atomic_bf_idx approximateListLength
 

Additional Inherited Members

- Protected Attributes inherited from zero::buffer_pool::FreeList
BufferPoolbufferPool
 

Constructor & Destructor Documentation

§ FreeListHighContention()

FreeListHighContention::FreeListHighContention ( BufferPool bufferpool,
const sm_options options 
)

Member Function Documentation

§ addFreeBufferpoolFrame()

void FreeListHighContention::addFreeBufferpoolFrame ( bf_idx  freeFrame)
finalvirtual

§ getCount()

bf_idx FreeListHighContention::getCount ( )
finalvirtual

§ grabFreeBufferpoolFrame()

bool FreeListHighContention::grabFreeBufferpoolFrame ( bf_idx freeFrame)
finalvirtual

Member Data Documentation

§ approximateListLength

atomic_bf_idx zero::buffer_pool::FreeListHighContention::approximateListLength
mutableprivate

§ list

rigtorp::MPMCQueue<bf_idx> zero::buffer_pool::FreeListHighContention::list
private

The documentation for this class was generated from the following files: