Является ли Java 7 WatchService медленным для кого-то еще?

WatchService похож на отличную технологию, но ее слишком медленно, чтобы быть полезной в системах OS X и Linux, на которых я тестировал. Чтобы добавить оскорбление к травме, он, похоже, не получает уведомления обо всех событиях.

Это касается как моего собственного кода, так и канонического примера из Oracle. ( http://docs.oracle.com/javase/tutorial/displayCode.html?code=http://docs.oracle.com/javase/tutorial/essential/io/examples/WatchDir.java )

Я признаю, что порт OS X OpenJDK не уверен в этой функции (см. Https://wikis.oracle.com/display/OpenJDK/Mac+OS+X+Port+Project+Status )

Кто-нибудь использовал это в производстве с успехом?

У меня гораздо лучшее время отклика, если я изменю

folder.register(watcher, StandardWatchEventKinds.ENTRY_MODIFY); 

в

 folder.register(watcher, new WatchEvent.Kind[]{StandardWatchEventKinds.ENTRY_MODIFY}, SensitivityWatchEventModifier.HIGH); 

JDK 7 еще не имеет встроенной версии WatchService для MacOS. Вместо того, чтобы слушать собственные события файловой системы, он использует резервную sun.nio.fs.PollingWatchService, которая периодически обходит файловую систему и проверяет последнюю измененную метку времени каждого файла и подкаталога в дереве. Я также обнаружил, что это необычно медленно.

Существует встроенная реализация WatchService для Mac:

http://code.google.com/p/barbarywatchservice/

Я не пытался использовать его сам.

Давайте будем гением компьютера.