首页 一天一个Qt类系列1:QLockFile
文章
取消

一天一个Qt类系列1:QLockFile

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
使用一个文件在进程间提供锁定

用于防止多个进程同时访问同一资源

一般可以调用lock等待其它操作完成。

如果要长时间保护一个资源,可以调用setStateLockTime(0)//过时时间ms 和tryLock,如果获得锁,返回true

一般可以使用 QDir::temp().absoluteFilePath("test.lock"); 来构造该类对象。

tryLock传递一个负数作为timeout将永远等待,直到锁定文件可以被锁定。

示例用法:
客户端和服务端使用同一个lockfile. 客户启动时tryLock成功后,unlock并启动服务端。服务端启动后tryLock但是不

调用unlock,这样下次客户端启动时tryLock失败,就不会再次启动服务端了。

欢迎评论交流

本文由作者按照 CC BY 4.0 进行授权