使用方式:
接口文档:
推荐使用gfsnotify
模块提供的Add
和Remove
模块方法,用于添加监控和取消监控。推荐原因见随后章节说明。
添加监听
其中/home/john
参数为一个目录,gfsnotify.Add
方法默认为递归监控,也就是说当目录下的文件(包括子目录下的文件)发生变化时,也会收到文件监控信息回调。
当我们在/home/john
目录下创建/删除/修改文件时,可以看到监控到了文件的修改并输出了对应的事件信息。
移除监听
移除监听我们可以使用Remove
方法,会移除对整个文件/目录的监听。
当对同一个文件/目录存在多个监听回调时,我们可以通过RemoveCallback
方法移除指定的回调。方法参数callbackId
是在添加监听时返回的Callback
对象的唯一ID。
使用示例2:
fs.inotify.max_user_instances与fs.inotify.max_user_watches
在*nix
系统下,gfsnotify
模块使用的是系统的inotify
特性来实现的文件/目录监控,因此该功能在使用时会受到系统的两个内核函数限制: