如今,计算机的使用越来越普遍。几乎每个家庭都有电脑。计算机的运行离不开操作系统。在这里,萧边介绍了如何在Linux操作系统下创建锁文件。


Linux提供了多种功能来实现文件锁定,最简单的方法是通过原子操作创建锁文件。所谓的原子操作是在创建锁文件时,系统不会允许其他任何事情发生,这使得程序能够确保它创建的文件是唯一的,并且该文件不能被其他程序同时创建。


两。方法


锁文件只是一个充当指示器的角色,程序需要通过协作来使用。


创建一个文件,是用来作为一个指标,我们使用开放的系统调用o_create和o_excl标签。这将使我们能够在一个原子操作的同时做两项任务:确保文件不存在,就创建它。





三。实现


文件:锁定。


# include



# include



# include



# include



# include



主()


{


国际file_desc;


国际save_errno;


file_desc =开放( / /锁定文件测试TMP。


如果(file_desc<0)


{


save_errno =错误;


printf(打开失败,错误为%d


}


别的{


printf(打开成功;


}


退出(exit_success);


}


首次运行程序:


$锁


输出如下:


打开成功


我们再次运行程序:


$锁


输出如下:


打开失败的错误是17


分析:


当程序第一次运行时,执行是成功的,因为文件不存在。为了以后的执行,文件由于文件的存在而失败。如果你想让程序再次执行,你必须删除锁文件。


In the Linux system, the error number 17 typically represents EEXIST, which is used to indicate that a file has already existed.The error number is defined in the header file errno.h or (more common) the header file it contains.