aardio 官方社区

 找回密码
 注册会员

QQ登录

只需一步,快速开始

搜索
查看: 10716|回复: 2

监视文件几种不同方法的区别

[复制链接]

42

主题

628

回帖

3765

积分

版主

积分
3765
发表于 2013-11-27 12:58:38 | 显示全部楼层 |阅读模式
文件监控的支持库有以下几个:

win.util.changeNotification
内部使用 SHChangeNotifyRegister API实现,仅关心用户在资源管理器的操作,可以注册一个窗体接受文件变更消息。
fsys.watch
内部通过 FindFirstChangeNotification API实现,这个所有文件变更都可以监视到所有的文件变更,但你会获取到哪个你监视的目录发生了变动,无法得知具体是哪一个文件路径发生了变更,如果只关心目录是不是改变了,可以用这个、用法比较简单。
fsys.dirWatcher
这个能监视到所有的文件变更,能得到变更的详细的文件路径,性能也比上面两个更好(文件变更频繁的话),是最佳的方案。
使用 fsys.dirWatcher 要注意需要创建一个独立的监视线程, fsys.dirWatcher 是一个循环语句,所以如果你需要停止的话要用一点技巧:首先用线程信号切换到停止状态,然后在主线程中创建一个临时文件立即删掉即可。

详细的示范源码请参考:aardio范例->文件操作->监视文件







52

主题

1270

回帖

7276

积分

荣誉会员

积分
7276
发表于 2013-12-9 16:08:30 | 显示全部楼层
感谢整理说明文档

2

主题

3

回帖

64

积分

一级会员

积分
64
发表于 2015-1-28 20:34:52 | 显示全部楼层
谢谢,aardio有你真精彩!
您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

手机版|未经许可严禁引用或转载本站文章|aardio.com|aardio 官方社区 ( 皖ICP备09012014号 )

GMT+8, 2025-2-13 07:13 , Processed in 0.059232 second(s), 22 queries .

Powered by Discuz! X3.5

Copyright © 2001-2024 Tencent Cloud.

快速回复 返回顶部 返回列表