侦听文件夹或文件以查看其是否已保存或是否已添加新文件的最佳方法是什么?
如果您只想监视目录但不处理单个文件的监视,那么 FSEvents API 是理想的选择。 Stu Connolly 有一个很棒的 FSEvents C API 的 Objective-C 包装器,它被称为 SCEvents,你可以在这里获取它:
http://stuconnolly.com/blog/scevents-011/ http://stuconnolly.com/blog/scevents-011/
FSEvents 的好处是您只需要监视一个文件夹,您就会收到该文件夹子文件夹层次结构中任何位置发生的任何更改的通知。
如果您需要文件级通知,则需要使用 kqueues。 Uli Kusterer 有一个很棒的 Objective-C 包装器:
http://zathras.de/angelweb/sourcecode.htm#UKKQueue http://zathras.de/angelweb/sourcecode.htm#UKKQueue
这两种方法都比直接使用 C API 容易得多,C API 没有特别详细的文档记录,而且有点迟钝。
如果您需要支持 Tiger,则需要使用 kqueues,因为 FSEvents API 在 10.4 中尚未正式提供。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)