2015-10-27 1 views
0

Я попытался найти в документации, и я не нашел указания.является сторожем уведомляет об удаленных файлах?

Я прочитал код часов win32 (потому что я знаком с API и, похоже, это не так).

Отслеживание для удаления файлов чрезвычайно запутано в окнах, поскольку API предоставляет имена файлов «случайным образом» и если файл больше не существует, чтобы разрешить настоящее имя «длинный путь», трудно сказать, что такое оригинал.

Я реализовал такую ​​вещь для своей предыдущей компании, сохраняя текущее состояние файлов и сверяя список файлов для каждой директории, в которой происходят изменения. Он работал хорошо.

Мой вопрос: я пропустил его, и сторож уведомляет об удаленных файлах? И если это не так - есть планы, чтобы эти уведомления были добавлены в ближайшем будущем.

ответ

1

Короткий ответ: да.

Более длинный ответ: более изогнутые части не являются полностью специфичными для Windows.

бита, который обрабатывает подогнанные имена можно найти здесь: https://github.com/facebook/watchman/blob/master/root.c#L748

Бит, который обрабатывает удаления состоит из двух частей; первым обрабатывает вещи, когда мы проверка именно файл, который мы были уведомлены о: https://github.com/facebook/watchman/blob/master/root.c#L853

Второй является своего рода «вывоз мусора» подход, при котором мы смотрим на вмещающего директории и обнаружить, что файл имеет ушли: https://github.com/facebook/watchman/blob/master/root.c#L1353

+0

это круто, спасибо – gsf