独占文件锁(PID文件实现)

时间:2014-03-27 22:46:59

标签: linux posix file-locking

我正在尝试为守护程序实现基于文件的独占锁,该守护程序基于每个文件应用(没有线程间或进程内锁定)。我知道这是一个常见的问题,并且已经建立了一些惯例,但我无法正确完成,或者完全理解问题。

我看过其他答案,目前我正在使用非常接近这个的东西:https://stackoverflow.com/a/1643134,即。使用flock在程序启动时创建一个咨询锁。但是,这不符合我的要求;对flock的调用总是成功。

我不确定my code是否不正确,或者我是否误解了,flock并不意味着跨越不同的流程(?)。

这是C ++(11)代码,在Linux 2.6.32(CentOS VM)和3.12.9(Arch)上测试,都是ext4文件系统。

1 个答案:

答案 0 :(得分:1)

我正在关闭acquire例程末尾的文件描述符。糟糕。