使用FileChannel和NIO.2同步一个目录

4
我刚刚发现,在使用 NIO.2 时,至少在 Linux 下,我可以打开一个目录的 FileChannel,并调用 force(true) 方法,在底层文件描述符上调用 fsync()。虽然不清楚是否必须要这样做,但很高兴在纯 Java 中终于有了这个功能。
然而,我无法找到任何地方有关此行为的文档说明。我能否指望这适用于所有 Unix 平台、未来版本的 Java 和非 Oracle JVM?

https://dev59.com/7m035IYBdhLWcg3wC7mf - Perception
这是关于文件的问题;只有Java 7似乎允许在目录上使用fsync,我想知道这是否是有意为之。 - Carey
明白了,是的,请看下面 @EJP 的回答。 - Perception
2个回答

3

-1

你可以信任文档所说的一切,但不能信任其他任何东西。


FileInputStream不同,FileChannel.open()的文档没有明确说明它只适用于普通文件,我猜这就是我们必须做的了。 - Carey

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接