Я хотел бы опросить файловую систему на предмет изменений, добавленных или удаленных файлов или подкаталогов. Все изменения следует обнаруживать быстро, но без нагрузки на машину. ОС - Windows> = Vista, наблюдаемая часть - это локальный каталог.
Обычно я прибегал к FileSystemWatcher, но это приводило к проблемам с другими программами, которые пытались наблюдать за тем же местом (в первую очередь, Windows Explorer). Кроме того, я слышал, что FSW ненадежен даже для локальных папок и с большим буфером.
Основная проблема, с которой я сталкиваюсь, заключается в том, что количество файлов и каталогов может быть очень большим (предположим, 7 цифр). Простое выполнение проверки всех файлов каждую секунду заметно повлияло на мою машину.
Моей следующей идеей было проверять разные части всего дерева в секунду, чтобы уменьшить общее воздействие, и, возможно, добавить своего рода эвристику, например, проверку файлов, которые часто меняются в более быстрой последовательности.
Мне интересно, есть ли шаблоны для такого рода проблем, или есть ли у кого-нибудь опыт в такой ситуации.