Flow-IPC 3.0.0
Flow-IPC project: Full implementation reference.
Classes | Namespaces | Functions
obj_disposer.hpp File Reference
#include "ipc/shm/arena_lend/detail/arena_lend_fwd.hpp"
#include <flow/util/util.hpp>
#include <memory>

Go to the source code of this file.

Classes

struct  ipc::shm::arena_lend::detail::Owner_obj_disposer_and_mdt< Shm_arena_t >
 Internal-use shared_ptr disposer object, attached to every cross-process-lendable object handle returned by A.construct<T>(), where A is a lend-capable arena object. 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.
 

Functions

template<typename T , typename Shm_session >
Obj_handle< T > ipc::shm::arena_lend::detail::construct_with_borrower_obj_disposer (T *addr, pool_id_t lend_tracker_pool_id, use_ct_idx_t use_ct_idx, owner_id_t owner_id, collection_id_t collection_id, std::shared_ptr< const Shm_session > &&shm_session_to_keep_alive)
 (Roughly) the borrower-side counterpart of Owner_obj_disposer_and_mdt, this returns a borrower-side handle shared_ptr<T> whose disposer is the borrower-side counterpart to Owner_obj_disposer_and_mdt. More...