Flow-IPC 3.0.0
Flow-IPC project: Full implementation reference.
Classes | Namespaces
thread_cache.hpp File Reference
#include "ipc/shm/arena_lend/jemalloc/jemalloc_fwd.hpp"
#include "ipc/shm/arena_lend/jemalloc/detail/jemalloc_fwd.hpp"
#include "ipc/shm/arena_lend/arena_lend_fwd.hpp"
#include "ipc/common.hpp"
#include <flow/util/action_registry.hpp>
#include <flow/util/thread_lcl.hpp>
#include <flow/log/log.hpp>
#include <boost/unordered_map.hpp>
#include <boost/unordered_set.hpp>
#include <boost/unordered/unordered_flat_map.hpp>
#include <string>
#include <atomic>

Go to the source code of this file.

Classes

class  ipc::shm::arena_lend::jemalloc::Thread_cache
 jemalloc central thread cache manager, maintaining an explicitly identified tcache per allocating thread per arena. More...
 
struct  ipc::shm::arena_lend::jemalloc::Thread_cache::Arena_death_progress
 For each arena currently being destroyed via destroy_arena_safely(), the state tracking the progress of that operation. More...
 
struct  ipc::shm::arena_lend::jemalloc::Thread_cache::Static_state
 Bundles static state used among the instances of this class; this allows us to ensure order of init/de-init. More...
 

Namespaces

namespace  ipc
 Catch-all namespace for the Flow-IPC project: A library/API in modern C++17 providing high-performance communication between processes.
 
namespace  ipc::shm
 Modules for SHared Memory (SHM) support.
 
namespace  ipc::shm::arena_lend
 ipc::shm sub-module providing the SHM-provider family based on the arena-lending paradigm: each process allocates in its own arena(s), lending the resulting objects to other processes, which can read them but not allocate (nor deallocate) in that arena.
 
namespace  ipc::shm::arena_lend::jemalloc
 ipc::shm sub-module with the SHM-jemalloc SHM-provider. See ipc::shm doc header for introduction.