java - Java 中的 Linux 文件锁定

标签 java linux file locking

我知道我们可以在 Linux 中使用 flock() 锁定文件。但是,NFS 驱动器可能不支持文件锁定。

我正在考虑在我的 java 代码中实现一些自定义文件锁定逻辑,以支持任何驱动器上的文件锁定。任何人都可以提出一个好的做法吗?

谢谢,

最佳答案

文件锁定必须由操作系统内核/文件系统驱动程序完成,除非您正在考虑更窄的范围,例如仅在单个进程的线程之间进行锁定。系统上的所有其他进程都不可能知道与您的应用程序交谈以锁定/解锁,而无需将它们重写为这样做。当像 NFS 那样考虑分布式锁定时,这一点更为重要(尽管正如您所注意到的,有许多损坏的 NFS 实现做得不好)。

关于java - Java 中的 Linux 文件锁定,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12537803/

相关文章:

html - 将 CSS 添加到多个 html 文件

java - res/values/strings.xml 中的字符串数组

java - 如何运行RESTEasy项目

使用 GDB 远程调试器时,linux 系统调用永远不会返回

linux - 如何知道 SSH key 的长度?

c - 为什么这不写(接收)正确的字节数?

java - 文件末尾的哨兵值?

java - 如何让 Ant 将属性文件复制到类目录

java - 后退按钮工作时操作栏主页按钮崩溃

linux - centos使用wget下载文件(https),​​在服务器上可用,但在本地虚拟机中停止?