A platform for high-performance distributed tool and library development written in C++. It can be deployed in two different cluster modes: standalone or distributed. API for v0.5.0, released on June 13, 2018.
|
#include <SharedMem.h>
Public Member Functions | |
SharedMem (size_t shmMemSize, pdb::PDBLoggerPtr logger) | |
~SharedMem () | |
void | lock () |
void | unlock () |
void * | malloc (size_t size) |
void * | mallocAlign (size_t size, size_t alignment, int &offset) |
void | free (void *ptr, size_t size) |
long long | computeOffset (void *shmAddress) |
void * | getPointer (size_t offset) |
void * | _malloc_unsafe (size_t size) |
void | _free_unsafe (void *ptr, size_t size) |
size_t | getShmSize () |
Static Public Member Functions | |
static char * | addressRoundUp (char *address, size_t roundTo) |
static size_t | roundUp (size_t size, size_t roundTo) |
static size_t | roundDown (size_t size, size_t roundTo) |
Protected Member Functions | |
int | initialize () |
void | destroy () |
int | getMem () |
int | initMallocs () |
int | initMutex () |
Private Attributes | |
pthread_mutex_t * | memLock |
pdb::PDBLoggerPtr | logger |
tlsfAllocator | allocator |
void * | my_tlsf |
void * | memPool |
size_t | shmMemSize |
Definition at line 39 of file SharedMem.h.
SharedMem::SharedMem | ( | size_t | shmMemSize, |
pdb::PDBLoggerPtr | logger | ||
) |
SharedMem::~SharedMem | ( | ) |
void SharedMem::_free_unsafe | ( | void * | ptr, |
size_t | size | ||
) |
void * SharedMem::_malloc_unsafe | ( | size_t | size | ) |
Definition at line 172 of file SharedMem.cc.
|
static |
long long SharedMem::computeOffset | ( | void * | shmAddress | ) |
Definition at line 152 of file SharedMem.cc.
|
protected |
void SharedMem::free | ( | void * | ptr, |
size_t | size | ||
) |
|
protected |
void * SharedMem::getPointer | ( | size_t | offset | ) |
Definition at line 156 of file SharedMem.cc.
size_t SharedMem::getShmSize | ( | ) |
Definition at line 70 of file SharedMem.cc.
|
protected |
Definition at line 127 of file SharedMem.cc.
|
protected |
|
protected |
Definition at line 160 of file SharedMem.cc.
void SharedMem::lock | ( | ) |
void * SharedMem::malloc | ( | size_t | size | ) |
Definition at line 75 of file SharedMem.cc.
void * SharedMem::mallocAlign | ( | size_t | size, |
size_t | alignment, | ||
int & | offset | ||
) |
|
static |
Definition at line 121 of file SharedMem.cc.
|
static |
Definition at line 116 of file SharedMem.cc.
void SharedMem::unlock | ( | ) |
|
private |
Definition at line 70 of file SharedMem.h.
|
private |
Definition at line 66 of file SharedMem.h.
|
private |
Definition at line 65 of file SharedMem.h.
|
private |
Definition at line 73 of file SharedMem.h.
|
private |
Definition at line 71 of file SharedMem.h.
|
private |
Definition at line 74 of file SharedMem.h.