bool JdbcUtil::memoryInit(void) { setError(NULL); if (!removeMemory()) return false; if (!removeSemaphores()) return false; if (!getMemory(true)) return false; if (!attachMemory()) return false; memset(sharedMemory,0,SHARED_MEMORY_SIZE); sharedMemory->active = true; if (!getSemaphores(true)) return false; if (semctl(semaphoreId, 0, SETVAL, 1) == -1) { int err = errno; removeMemory(); removeSemaphores(); setPerror(err,"Cannot initialize semaphore value"); return false; } return true; }
static void cleanup() { removeTempFiles(); removeTempDirectories(); removeSemaphores(); }