如何知道FSEvents事件是否对应于仍在写入的新文件

时间:2019-10-30 01:05:01

标签: macos cocoa fsevents

在备份应用程序中,我正在监视对用户选择的目录A的更改,并将所有文件的更改镜像到另一个目录B。唯一的问题似乎是:我怎么知道文件是否已创建并且仍在写入中例如当应用程序创建一个很大的文件或Finder复制文件时?

我想忽略此事件,因为将在写操作完成的那一刻发生另一个事件,并且几乎可以肯定地将文件从A复制到B(在原始文件仍然处于静止状态时开始复制)被写入通常会导致错误)。我试图分析传递给FSEvents回调的标志,但是似乎不同的应用程序导致传递不同的标志(例如cp和touch命令,在Finder中启动的副本,从TextEdit和Word创建文件的所有结果)不同的标志)。

0 个答案:

没有答案