我正在开发一个小型 Java 应用程序(Java 1.6,Solaris),它将使用多个后台线程来监视一系列文本文件以查找与特定正则表达式模式匹配的输出行,然后使用这些行。我每个文件有一个线程;他们将感兴趣的行写入队列,另一个后台线程只是监视队列以收集整个被监视文件集合中的所有感兴趣的行。
我遇到的一个问题是当我正在监视的文件之一被重新打开时。许多创建我正在监视的文件的应用程序在重新启动时只会重新启动它们的日志文件;它们不会附加到已经存在的内容上。
我需要我的 Java 应用程序来检测该文件是否已重新打开并在该文件之后重新启动。
我怎样才能最好地做到这一点?