Альтернативы inotify для обнаружения, когда новый файл создается в папке

Я занимаюсь разработкой своей программы для Linux, есть ли программный способ определить, когда другое приложение создает / копирует файл в / в определенную папку. Я хочу обнаружить новый файл так же быстро, как он создан, и я хотел бы обработать файл.

Насколько я исследовал, я могу сделать это с помощью inotify. Есть ли лучшие альтернативы?

1

Решение

inotify — это правильный API, предоставляемый ядром Linux. Ваш инструментарий может иметь удобство на вершине, например, KDirWatch из libkdecore, но внутри используется inotify.

Использование API из инструментария — хорошая идея, если ваша программа кроссплатформенная.

1

Другие решения

http://www.highscore.de/boost/dir_monitor.zip на http://en.highscore.de/cpp/boost/asio.html является кроссплатформенным решением C ++ Boost, хотя я еще не пробовал.

http://boost.2283326.n4.nabble.com/ASIO-file-monitoring-help-td4645105.html если код использует его, что неверно, исправление выглядит так, чтобы сделать еще несколько объектов, которые, как предполагал автор, могут быть временными постоянными.

1

http://man7.org/linux/man-pages/man7/fanotify.7.html это еще один вариант

Это хорошая статья, которая суммирует все методы http://www.lanedo.com/filesystem-monitoring-linux-kernel/

1
По вопросам рекламы [email protected]