【求解】如何屏蔽inotify监测中间文件?

比方说,在上传下载过程中,在未完成前会 产生一些中间文件,这对于本地或者服务器来说是有变化的,inotify是linux下用来监测文件系统变化的一个机制,如果对于这种中间文件一直监测,就会耗费很多资源,而且没有必要。
今天看到inotify_event的结构体是这样定义的:

struct inotify_event 
{
  int wd; 		/* The watch descriptor */
  uint32_t mask; 	/* Watch mask */
  uint32_t cookie;	/* A cookie to tie two events together */
  uint32_t len;		/* The length of the filename found in the name field */
  char name __flexarr;	/* The name of the file, padding to the end with NULs */	
}

各个字段内容解释如下:

wd 字段是指与事件相关联的监视器。如果每个 inotify 有一个以上的实例,您可以使用这个字段确定如何继续以后的处理过程。

mask字段由几个部分组成,它说明发生的事情。分别测试每个部分。当把一个文件从一个目录移动到另一个目录时,您可以使用 cookie 将两个事件绑在一起。仅当您监视源和目标目录时,inotify 才生成两个移动事件 — 分别针对源和目标 —,并通过设置 cookie 将它们绑定在一起。要监视一个移动操作,必须指定 IN_MOVED_FROM 或IN_MOVED_TO,或使用简短的 IN_MOVE,它可以监视两个操作。使用 IN_MOVED_FROM 和 IN_MOVED_TO 来测试事件类型。
最后,name 和 len 包含文件的名称(但不包括路径)和受影响文件的名称的长度。

我在想cookie这个字段是否保证了inotify不会没完没了的监测中间文件的更新,而是将其看做一个事件,不会产生很多个监控事件?
不知道自己理解的对不对,希望获得大家的帮助!:4_94: