/// /// /** * @description 文件 Stats 观察对象 * * 当调用 `fs.watchFile(target, onchange)` 成功时, 返回该类型对象 * ```JavaScript * var fs = require("fs"); * var statsWatcher = fs.watchFile(target, (curStat, prevStat) => { * // process * // ... * * statsWatcher.unref(); * }); * ``` * **注意** 当且**仅当**被观察的目标文件 target 的 mtime 属性发生变化时才会触发 onchange 回调 * * 单纯地访问(access)目标文件 target 不会触发 onchange 回调. * * 如果调用 `fs.watchFile(target)` 时, target 表示的文件或目录还不存在, 则onchange 回调**不会**被调用, 一直到该 target 被创建, 该回调才会开始被调用. * 如果在 watcher 工作途中, )目标文件被删除, 则后续不会再有回调产生 * */ declare class Class_StatsWatcher extends Class_EventEmitter { /** * @description 查询和绑定"文件改变"事件,相当于 on("change", func); */ onchange: (...args: any[])=>any; /** * @description 停止对目标文件路径的观察, 清除引用计数(不再 hold 进程) * */ close(): void; /** * @description 增加引用计数, 告知 fibjs 只要该 watcher 还在使用就不要退出进程, * 经由 `fs.watchFile()` 得到的 StatsWatcher 默认已调用了该方法, 即默认就会 hold 进程. * * @return 返回 StatsWatcher 本身 * */ ref(): Class_StatsWatcher; /** * @description 减少引用计数 * * @return 返回 StatsWatcher 本身 * */ unref(): Class_StatsWatcher; }