增强进程间建立一个memoryHandler

时间:2018-08-08 14:47:34

标签: c++ boost-interprocess

我正在尝试构建一个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);
}

0 个答案:

没有答案