同一个Java应用程序的多个实例是否会尊重“java.nio.channels.FileLock”在同一个操作系统上创建的文件锁?比方说在同一台计算机或服务器上。(Java 17.0.2)
发布于 2022-03-09 23:44:02
这在FileLock的Javadoc中进行了讨论,特别是关于"Platform“的部分。
这是完全定义的实现,因此您必须研究底层操作系统,以查看是否强制执行文件锁。您可以确定的是,任何Java程序都将使用相同的底层文件锁定机制,并且底层机制定义了行为。
而且,在大多数系统中,文件锁定是协作的,这意味着每个人都必须使用文件锁定机制来参与。不锁定文件的代码可能访问或不访问其他进程锁定的文件。当然,当您有网络文件系统时,事情会变得更加复杂,所以“您的里程会有所不同”。
https://stackoverflow.com/questions/71416859
复制相似问题