1.创建共享内存,如果键所标识的共享内存段已经存在,则不执行附加操作,并返回false。
#include <QApplication>
#include <QSharedMemory>
#include <QMessageBox>
int main(int argc, char *argv[])
{
QApplication a(argc, argv);
//"AK" 键
static QSharedMemory sharedMemory("AK");
//使用传递给构造函数的键创建大小为1字节的共享内存段,使用setKey()或setNativeKey()
//进行设置,然后以给定的访问模式附加到新的共享内存段并返回true。
//如果键所标识的共享内存段已经存在,则不执行附加操作,并返回false。
//当返回值为false时,调用error()来确定发生了哪个错误。
if (!sharedMemory.create(1))
{
QMessageBox::critical(nullptr, QObject::tr("Application Already Running"),
QObject::tr("Another instance of this application is already running."));
return -1;
}
return a.exec();
}
标签:共享内存,false,Qt,int,多开,附加,return,include
From: https://blog.csdn.net/qq_62675860/article/details/145201147