56 const char*
Add(
const char* str);
Critical section objects are used to protect a portion of code from parallel execution.
Nebula's dynamic array class.
Definition array.h:60
Global string atom table.
Definition globalstringatomtable.h:25
~GlobalStringAtomTable()
destructor
Definition globalstringatomtable.cc:27
const char * Add(const char *str)
add a string pointer to the atom table and string buffer (must be called inside Lock())
Definition globalstringatomtable.cc:61
void Lock()
take the critical section
Definition globalstringatomtable.cc:39
Threading::CriticalSection critSect
Definition globalstringatomtable.h:60
DebugInfo GetDebugInfo() const
debug functionality: get copy of the string atom table
Definition globalstringatomtable.cc:74
void Unlock()
release the critical section
Definition globalstringatomtable.cc:48
__DeclareInterfaceSingleton(GlobalStringAtomTable)
StringBuffer stringBuffer
Definition globalstringatomtable.h:61
GlobalStringAtomTable()
constructor
Definition globalstringatomtable.cc:16
StringBuffer * GetGlobalStringBuffer() const
get pointer to global string buffer
A StringAtom.
Definition stringatom.h:22
This implements the base class for thread-local and global string atom table classes.
Definition stringatomtablebase.h:34
Global string buffer for the StringAtom system.
Definition stringbuffer.h:31
A pinned array is an array which manages its own virtual memory.
Definition String.cs:6
debug functionality: DebugInfo struct
Definition globalstringatomtable.h:38
size_t numChunks
Definition globalstringatomtable.h:41
size_t chunkSize
Definition globalstringatomtable.h:40
size_t allocSize
Definition globalstringatomtable.h:42
size_t usedSize
Definition globalstringatomtable.h:43
Util::Array< const char * > strings
Definition globalstringatomtable.h:39
bool growthEnabled
Definition globalstringatomtable.h:44