Я работаю с Java 6 и не могу использовать Watch Service. Я ищу альтернативу опросу. Итак, как JNotify отличается от опроса? Или JNotify использует опрос?JNotify vs Опрос
ответ
JNotify использует встроенную поддержку ОС для уведомлений файловой системы. на Linux он использует INotify (что является вдохновением для его имени), в Windows это использует ReadDirectoryChangesW, а на Mac он использует API FSEventStream. Я начал JNotify около 2005 года, задолго до уведомления о поддержке файловой системы JVM. Сегодня рекомендуется использовать поддержку JVM, но если вы не можете положиться на это, это хорошая альтернатива.
Следует помнить, что JNotify использует поддержку ОС, которая иногда невелика. в некоторых случаях события файловой системы отбрасываются ОС, и вы не можете с этим справиться.
Спасибо за ваш ответ! –
Кстати, знаете ли вы, если в Файловом мониторе Apache Commons Io (https://commons.apache.org/proper/commons-io/apidocs/org/apache/commons/io/monitor/package-summary.html) используется опрос или не? Кажется, что это не так, но я читал в других местах, что он использует опрос. –
Я не знаком с этим проектом. –
JNotify - это API-интерфейс linnotify, обработанный java, который изначально предназначен для Linux. Он не использует прямой опрос в каталоге. ОС сообщит об изменении каталога, и JNotify прослушает его. Но есть ли у вас причины использовать Java 6? – jungyh0218
Да. Требуется, чтобы я использовал Java 6. И ваш ответ помог мне прояснить мои сомнения. Спасибо. –