题
主题说明了一切-通常易和交叉平台的方式是对投票、智能化。但是,每一个操作系统具有一些手段来通知没有投票。是否有可能在一个合理的交叉平台的方式?(I仅真正关心Windows和Linux,但是,我使用的是mac,所以我想posix可以帮忙吗?)
解决方案
其他提示
该建图书馆 QFileSystemWatcher 类提供跨平台的通知时,一个文件的变化。即使你不用脱,因为源是可你可以看看它作为一个试样为自己的执行。脱了单独的实现Windows、Linux和Mac。
还有 文件系统的活动API 为豹。
我不认为POSIX本身具有的设施。最近的交叉平台,我看到的是 FAM, ,这似乎是工作for Linux,BSD,并Irix,但是我不怎么容易就会将它移到Windows和mac os.
我实际上是建立该系统之前,使用在商用C++编码基-只要你不需要每一个怪异的东西在阳光下、窗户和POSIX系统有很多重叠,你可以抽象的。
POSIX:使用,它是整个系统的从字面上建立这个工作
Windows:使用"更改的活动"。你必须建立更多的胶水,并报告自己的(所有Api你需要的都可以,只是不1-停止-购物,给您)。
常见的事情你可以侦测在你的"线通知"对于转发事件是:
1)基本上,任何侵入性的操作,提高::文件系统的支持,以(可能的)异常的修改的权限。这东西喜欢的运动,创造、删除、复制文件夹和文件。
2)读写的文件(esp。写).要知道,如果你使用异步I/O通知可能出现的顺序。
3)当一个新的体积,如有人连接的闪存盘。
,特别是给你一个疯狂的水平严格的控制,窗户小。有,你可以从字面上的监视器的一切文件系统正在接近实时间如果你真的想。我知道#3是可能的,既没有投票,但是要知道,它可以真正棘手得到它工作正常-两系统。
我相信OS X现在拥有适当挂钩/回,因为他们需要聚光灯下的索引。
在linux上你就会有其他的麻烦有多个文件系统中通常使用。如果你需要的功能只有有限数量的文件目录,我愿意尝试有关积极寻求改进在固定的时间间隔。