java - JNotify何时通知文件创建

标签 java linux ubuntu jnotify

假设JNotify正在监听一个名为a的文件夹,我将一个文件f从不属于a的子目录的文件夹B复制到a。JNotify将在何时通知。
1)是否在开始写入新文件时,即在对文件调用open()以写入新文件时?

2)是否在新文件完全写入并关闭之后,即在文件写入完成后调用close()时?
我不确定复制一个文件是否需要写入文件。但我想应该这样做。
我想知道在ubuntu(Linux)中的场景,任何参考都是非常感谢的。

最佳答案

JNotify对通知的准确送达时间不作任何保证。
一般来说,这取决于操作系统API,这些API也可以做自己的缓冲(Windows的行为将不同于Linux或Mac)。
在大多数非平凡的文件创建和写入过程中,您将得到一系列事件,而不仅仅是一个事件。
您可能希望在您的一侧有一个计时器,用于获取文件事件停止的点,以确定可以安全地对其进行操作。

本文翻译自 https://stackoverflow.com/questions/37701704/

网站遵循 CC BY-SA 4.0 协议,转载或引用请注明出处。


相关文章:

ubuntu - 未知的编码器“ libx264”

linux - Ubuntu Inet Addr不断变化

java - JPA 2.0 / EclipseLink和sqlite 3.7.2-无法创建表

java - java.lang.unsatisfiedlinkerror。在哪里为Android应用程序在eclipse中添加.so文件

java - 将HTTP标头添加到JAX-WS服务响应

linux - 为什么“ kill”与终端和system()不同?

linux - 查找多个重命名

java - Vertx HttpClient getNow无法正常工作

linux - 使用非标准端口在命令行上发送邮件

linux - 安装Linux内核会生成“ gzip:stdout:设备上没有剩余空间”错误