qtcreator 程序单例运行
默认可以同时打开N个窗口
但是有时候要求程序只能单例运行,比如爬虫
这时候

这个文件中
添加两个头文件
#include <QDir>
#include <QLockFile>
然后再从main函数中合适的位置添加如下语句
QString path = QDir::temp().absoluteFilePath("SingleApp.lock"); QLockFile lockFile(path); bool isLock = lockFile.isLocked(); (void)isLock; // 没什么实际意义 // tryLock尝试创建锁定文件。此函数如果获得锁,则返回true; 否则返回false。 // 如果另一个进程(或另一个线程)已经创建了锁文件,则此函数将最多等待timeout毫秒 if (!lockFile.tryLock(100)) { qDebug() << "已运行中"; return 0; }

浙公网安备 33010602011771号