|
tlds
Transactional Operations for Linked Data Structures
|
Classes | |
| struct | block_head_node_t |
| struct | shared_block_t |
Public Member Functions | |
| block_pool (int _numthreads) | |
| void * | alloc_block (int tid) |
| void | free_block (void *block, int tid) |
Static Public Member Functions | |
| static void * | operator new (size_t size) |
| static void | operator delete (void *ptr) |
Private Member Functions | |
| template<typename T > | |
| struct block_pool::block_head_node_t | __attribute__ ((aligned(CACHELINE_BYTES))) |
Static Private Member Functions | |
| static shared_block_t * | make_shared_block_t (void *block) |
Private Attributes | |
| counted_ptr * | global_pool |
| block_head_node_t * | head_nodes |
Static Private Attributes | |
| static const unsigned long | GROUP_SIZE = 8 |
| static const int | blocksize = sizeof(shared_block_t) |
|
inline |
|
private |
|
inline |
|
inline |
|
inlinestaticprivate |
|
inlinestatic |
|
inlinestatic |
|
staticprivate |
|
private |
|
staticprivate |
|
private |