|
Flow-IPC 3.0.0
Flow-IPC project: Full implementation reference.
|
#include "ipc/shm/arena_lend/arena_lend_fwd.hpp"#include "ipc/shm/arena_lend/detail/lend_tracker_pool.hpp"#include "ipc/shm/arena_lend/detail/owner_spc_impl.hpp"#include "ipc/shm/arena_lend/detail/shm_pool_offset_ptr_data.hpp"#include "ipc/shm/arena_lend/arena_lend_stats.hpp"#include "ipc/shm/arena_lend/detail/arena_lend_fwd.hpp"#include "ipc/shm/arena_lend/detail/stats.hpp"#include "ipc/shm/shm_stats.hpp"#include "ipc/session/standalone/shm/arena_lend/detail/borrower_shm_pool_collection_repository.hpp"#include "ipc/util/process_credentials.hpp"#include "ipc/common.hpp"#include <flow/util/linked_hash_map.hpp>#include <flow/util/thread_lcl.hpp>#include <flow/util/util.hpp>#include <flow/util/stat/stat_set.hpp>#include <flow/util/stat/stat_set_list.hpp>#include <flow/log/log.hpp>#include <flow/log/config.hpp>#include <flow/async/async_fwd.hpp>#include <boost/thread/future.hpp>#include <boost/thread/thread_only.hpp>#include <boost/unordered/unordered_flat_set.hpp>#include <boost/unordered/unordered_flat_map.hpp>#include <boost/range/join.hpp>#include <boost/range/adaptor/filtered.hpp>#include <boost/range/adaptor/transformed.hpp>#include <boost/range/adaptor/map.hpp>#include <boost/range/algorithm/for_each.hpp>#include <type_traits>#include <vector>#include <cstdlib>#include <optional>#include <atomic>Go to the source code of this file.
Classes | |
| class | ipc::shm::arena_lend::detail::Thread_lcl_obj_db_admin< Shm_arena_t > |
(Internal-use) Thread_lcl_obj_db_admin<A>::this_thread_obj_db() is the current thread's module that tracks extant a.construct<>()ed (in this thread) objects in SHM, where a represents all SHM-arenas of type A. More... | |
| struct | ipc::shm::arena_lend::detail::Thread_lcl_obj_db_admin< Shm_arena_t >::Collection_db |
| Per-arena (per-collection-ID) tracking state owned by this per-thread admin. More... | |
| struct | ipc::shm::arena_lend::detail::Thread_lcl_obj_db_admin< Shm_arena_t >::Collection_db::Object |
| A single constructed object's tracking data: its address and the functor to destroy/dealloc it. More... | |
| struct | ipc::shm::arena_lend::detail::Thread_lcl_obj_db_admin< Shm_arena_t >::Arena_forget_progress |
| For each arena currently being forgotten via forgetting_shm_arena(), the state tracking the progress of that operation. More... | |
| struct | ipc::shm::arena_lend::detail::Thread_lcl_obj_db_admin< Shm_arena_t >::Static_state |
| Singleton state shared across all per-thread Thread_lcl_obj_db_admin instances (for a given Shm_arena type). More... | |
| class | ipc::shm::arena_lend::detail::Thread_lcl_obj_db_client< Shm_arena_t > |
(Internal-use) Where a Thread_lcl_obj_db_admin cannot handle lend-object and dispose-object tracking, because the end user triggering those ops happens to be in a thread different from the one in which the object was .construct()ed, use Thread_lcl_obj_db_client: whether in the owner process (but not-constructing thread) or a borrower process (any thread). More... | |
| struct | ipc::shm::arena_lend::detail::Thread_lcl_obj_db_client< Shm_arena_t >::Pool_data |
| Per-lend-tracker-pool bookkeeping on the client side: the pool handle itself and its identity. More... | |
| struct | ipc::shm::arena_lend::detail::Thread_lcl_obj_db_client< Shm_arena_t >::Static_state |
| Singleton state shared across all per-thread Thread_lcl_obj_db_client instances (for a given Shm_arena type). 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::detail |
| Segregated private stuff for ipc::shm::arena_lend. | |