fcntl.lockf()以何种方式锁定文件



我目前正试图通过python锁定一个文件,这样其他进程甚至无法读取它。

到目前为止,我正在通过python解释器测试fcntl.lockf()的行为:

>>> file = open("/path/to/file", "w")
>>> fcntl.lockf(file.fileno(), fcntl.LOCK_EX | fcntl_LOCK_READ)

我已经尝试过这个和fcntl.lockf的其他一些变体,但我仍然能够第二次打开文件并获得他的fd。我可以阅读它,也可以写信给它。

我是不是遗漏了什么,或者这根本不应该为其他过程锁定文件?还有别的办法吗?

这是一个咨询锁,只有合作过程才会被阻止。请参阅关于如何放置强制锁的讨论。

相关内容

  • 没有找到相关文章

最新更新