WatchService在Linux上不可靠

时间:2013-05-09 18:03:29

标签: java watchservice

我一直在Java 7中尝试使用WatchService的简单应用程序。它会查看新文件的目录。它在Linux CentOS 6上运行。我可以将文件复制到监视目录,然后获取文件创建事件。一切都好。

我的基础是Oracle样本。

问题是密钥无法解释无效。 Javadoc说有几种情况可能导致这种情况,例如取消密钥。我没有取消它。程序运行时没有文件创建,它会无效。只是坐在那里,它会在几分钟或更长时间内无效。有一次它在神秘失效之前跑了四天。

Javadoc唯一可能的解释是被监视的目录被删除或不再可用。我当然不会删除它。这留下了可用性。

现在我想知道WatchService使用的Linux实现是否告诉它该目录由于系统负载或其他原因而不可用。我无法想象会做什么。系统没有真正加载。包含该目录的文件系统是该系统的本地文件系统。其他任何东西都不使用该目录。

还有什么其他可能性?

0 个答案:

没有答案