Java 7 Watch Service ENTRY_CREATE wird ausgelöst, bevor die Datei geschrieben wird

Ich habe einen Überwachungsdienst, der ein Verzeichnis überwacht. Sobald Dateien erstellt wurden, bearbeite ich das Verzeichnis und aktualisiere eine Baumansicht.

Dies funktioniert gut aufENTRY_DELETE, aber manchmal (nicht immer), wenn einWatchEvent vonENTRY_CREATE tritt auf, die Datei wurde noch nicht auf die Festplatte geschrieben.

Ich habe dies durch das Erstellen eines @ bestätignew File() des Verzeichnisses, in dem der Überwachungsdienst registriert ist, zusammen mit dem Pfad der Datei und der Überprüfung desexists() -Methode, so scheint es, dass das Betriebssystem das Ereignis create auslöst, bevor die Datei tatsächlich erstellt wird.

Diese Frag scheint dasselbe Problem zu sein, jedoch aus der Sicht des Ordners.

Wie kann ich das umgehen?

Antworten auf die Frage(4)

Ihre Antwort auf die Frage