默认可以同时打开N个窗口

但是有时候要求程序只能单例运行,比如爬虫

这时候qtcreator 程序单例运行qtcreator 程序单例运行

 

 这个文件中

 添加两个头文件

#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;
     }

 

相关文章:

  • 2021-06-29
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2022-01-11
  • 2021-11-28
  • 2022-12-23
  • 2021-06-04
猜你喜欢
  • 2021-08-13
  • 2021-08-09
  • 2022-12-23
  • 2021-09-07
  • 2021-10-10
  • 2022-01-05
  • 2021-10-08
相关资源
相似解决方案