复制操作并不总是原子的。
使用原子复制(或移动),您将获得一个ENTRY_CREATE事件,该事件引用的文件将是完整的并可读取。
如果副本不是原子副本,则在创建文件时将收到ENTRY_CREATE事件,然后在通过复制操作写入文件时将收到一个或多个ENTRY_MODIFY事件。
没有简单的方法来确定复制操作何时完成对文件的写入和释放。根据操作系统和文件系统的不同,在通过复制操作锁定文件时尝试打开文件进行读取时,可能会遇到FileNotFoundException异常,或者可以成功打开文件,但实际读取文件时会得到部分内容。
您将必须实施一些试探法,例如尝试在ENTRY_CREATE之后立即读取文件,并在初始读取失败时将读取重新安排在以后的时间。



