Когда JNotify уведомляет о создании файла
Предположим, JNotify прослушивает папку с именем A, и я скопировал файл f в A из папки B, которая не является частью подкаталога A. В какой именно момент JNotify уведомит об этом.
1) Это в тот момент, когда начинается запись в новый файл, т.е. когда вызывается open() для файла, чтобы записать в него?
ИЛИ ЖЕ
2) Это в точке после того, как новый файл полностью записан и закрыт, т.е. когда close() вызывается для файла после завершения записи в него?
И я не уверен, что копирование файла включает запись в файл. Но, думаю, так и должно быть.
Я хотел бы знать сценарий в Ubuntu(Linux). Любая ссылка высоко ценится.
1 ответ
JNotify не дает никаких гарантий относительно точных сроков доставки уведомлений. обычно это зависит от API операционной системы, и эти API также могут выполнять свою собственную буферизацию (Windows будет вести себя не так, как Linux или Mac).
в большинстве нетривиальных процессов создания и записи файлов вы будете получать серию событий, а не только одно. вы можете захотеть иметь таймер на вашей стороне, чтобы определить момент, когда события для файла останавливаются, чтобы определить, что с ним безопасно работать.