次のように定義されmanaged_shared_memory
たマップコンテナを保持するオブジェクトがあります。SharedMap
typedef std::pair<std::string, T> ValueType;
typedef allocator<ValueType, managed_shared_memory::segment_manager> ShmemAllocator;
typedef map<std::string, T, std::less<std::string>, ShmemAllocator> SharedMap;
私の問題は、使用している共有メモリのサイズを決定する必要があることです。マップのキーは不明なサイズのstd::stringであり、データは不明なサイズのテンプレートタイプであり、各データのサイズは異なります。
誰かが私が使用しているメモリを追跡する方法を提案できますか?
私はboost::interprocessを初めて使用するので、どんな提案も大いに役立ちます。