私はWatchDogを実装して、ファイルの変更、削除、およびディレクトリへの追加を再帰的に探しています。Linuxを使用しています。プログラムはうまく機能し、Java7でそれを行うのは非常に簡単です。唯一のことは、いくつかのファイルを含むディレクトリを追加すると、含まれているすべてのファイルの追加を監視できないことです。問題は、新しいディレクトリを追加するときに、WatchDogがそれをWatchServiceに登録する必要があり、その間に追加されたファイルの一部(通常は1つまたは2つ)が失われることだと思います。WatchDogは、すべてのupdateEventを別のスレッドによって読み取られるblockingQueueに配置するスレッドです。
これがWatchDogです:http://pastebin.com/q5SW0iJF
誰かが同じ問題を経験したことがありますか?もしそうなら、どのようにそれを解決しましたか?
ありがとう