我正在尝试构建一个memoryHandler,该内存处理程序允许我创建和管理共享内存,例如我只想创建一次managed_memory_object
。
构造段时,我实际上想将返回指针作为成员变量存储在类中,因此无需使用boost中的find函数就可以访问它。
有什么办法可以实现这样的目标吗?还是我总是必须映射共享内存并使用find函数来找到我的段?
感谢您的帮助
Manu
示例类:
MemHandler::MemHandler(const char* name_p)
{
size_m = 1024;
name_m = name_p;
shm_m{open_or_create, name_m, size_m};
sharedVar_m = shm_m.construct<int>("sharedValue")(4711);
}
int* MemHandler::getSharedVar()
{
return sharedVar_m;
}
void MemHandler::setSharedVar(int value)
{
sharedVar_m = shm_m.construct<int>("sharedValue")(value);
}