欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

QT防止程序多次启动

程序员文章站 2022-03-20 17:24:23
Question:最近在linux下作的一个项目,设置了crontab自启动,但是经常出现启动多个进程的原因,针对这种情况,我做了如下处理: 1、QLockFile的构造函数的参数就是指定一个锁文件的地址 2、tryLock的参数为等待时间 3、如果程序没有启动则对文件上锁,如果启动则退出 ......

question:最近在linux下作的一个项目,设置了crontab自启动,但是经常出现启动多个进程的原因,针对这种情况,我做了如下处理:

qlockfile *lockfile = new qlockfile("temp/appname.app.lock");
 if (!lockfile ->trylock(2000)) {    //上锁失败,不能启动    
    qdebug() << "app is running";
    }else
{
     qdebug() << "app is not running";
}

1、qlockfile的构造函数的参数就是指定一个锁文件的地址

2、trylock的参数为等待时间

3、如果程序没有启动则对文件上锁,如果启动则退出