是否有用于“锁定文件”的标准Linux库?

时间:2015-07-01 23:52:43

标签: linux file synchronization locking

假设我有一个文件夹,我希望我的应用程序一次只能处理一个应用程序。我只能通过文件系统本身进行同步。通常这是一个像.lock_file这样的东西,如果存在,我知道另一个实例正在使用它。是否有任何标准库可以处理这类事情?

1 个答案:

答案 0 :(得分:1)

如果您使用的是C / C ++,请参阅fclnt或flock: Locking files in linux with c/c++

如果您使用的是java,请参阅FileChannel lock methodHow can I lock a file using java (if possible)

您还可以检查是否存在.lock_file打开它 open(pathname, O_CREAT | O_EXCL, 0644), 请参阅open man page,它会创建并打开文件,并在路径名存在时返回EEXIST。

在java中,调用File method createNewFile()可用于原子地创建.lock_file