1

我有一个多线程 java 应用程序,日志代码在 1 个线程中使用 File.length,但仅用于日志记录。

无论此日志记录如何,我都希望能够从其他线程中删除。

java.io.File.length() 调用可以锁定文件并阻止 java.io.File.delete() 调用工作吗?

我正在使用 Windows Sun/Oracle JRE(目前为 1.6.0_30)

4

1 回答 1

1

这将是文件系统的属性,而不是 JVM,因此不可能用简单的“是”或“否”来回答这个问题。在打开文件进行读取或写入时无法工作的已知问题delete()是 Windows 特有的问题,在类 UNIX 系统上不会发生。

但在您的具体情况下,这在 Windows、Linux 或 Mac OS X 上都不是问题,也许这个答案已经足够好了!

于 2012-04-18T13:18:06.753 回答