qt共享内存问题,我这里老不能正常判断。

在程序的main函数中调用改函数,为什么每次输出都是“create”啊,难道已经存在同样key值的内存也可以创建成功?

void testShareMem()
{
QSharedMemory sharedmem("aa");
if (!sharedmem.create( 512, QSharedMemory::ReadWrite))
qDebug() << "is create already!";
else
{
qDebug() << "create!";
}
}

1个回答

已经知道原因了,不好意思,没注意,共享内存设置在了函数内,成了局部变量,函数结束后就被释放了,
把QSharedMemory sharedmem("aa");
放到外边就可以了。

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问
相关内容推荐