Linux – 同时读/写文件

Linux对我来说很奇怪,我正在考虑如何编写我的程序来安全地运行linux文件。 如果我的程序运行(打开,读取或写入)由其他进程正在操作的文件(普通文件或dev文件等),我应该考虑哪些方面。 你能给我一些想法,或者build议我有用的文章/链接?

一个简单的规则:如果每个人都在阅读,让他们阅读,但如果有人正在写作之间,总是使用锁。 检查羊群的细节和例子。 对于unix,即使文件被锁定文件打开也不会失败。 咨询锁定的尝试需要完成。 像这样的事情会做到这一点:

err = lockf(fd, F_TLOCK, 0); if (err < 0) /* err = sharing error */;