Это относится к Mac, но может также относиться к Linux, поэтому я пометил его так:
Я рекурсивно просматриваю каталог и получаю дерево с атрибутами файловой системы.
Затем я повторяю снова (и снова, и снова) каждый раз, когда окно возвращается в фокус.Когда я читаю каталог, я ищу все файлы, которые были изменены, и мне нужно действовать с ними.
Очевидная вещь, которая пришла мне в голову, - это сравнить даты модификации каждого файла, однако мои юнит-тестыдоказал, что это ненадежно, поскольку сами тесты выполняются менее чем за секунду ... в результате файлы, измененные моими тестами, считаются неизмененными (так как с точностью до 1 секунды).
Мое исправление до сих порКроме того, сравнивался размер файла, но при этом существует риск того, что если файл был изменен, и полученный размер будет таким же, он также останется незамеченным.
Далеко от хеширования каждого файла, что просто невыполнимо (слишком медленно при рекурсии всего дерева каталогов), есть ли что-то еще, что я могу использовать, что предлагает HFS / HFS +?Как какой-то номер версии / количество модификаций, прикрепленных к файлу?Боюсь, что нет, хотя на самом деле крайний случай, когда файлы меняются так же быстро, как меняются мои модульные тесты, вряд ли будет проблемой в реальном случае использования.