node.js
文件系统监视方法有什么区别:
watch(filename,[, options],(filename) => {} )
(node-watch 包)fs.watch(文件名[,选项][,监听器])
fs.watchFile(文件名[,选项],监听器)
(添加更多(如果有))
最佳答案
我正在寻找有关这个问题的信息,并发现了 this post.
- 博客文章简而言之:
fs.watch()
- 是较新的 API,推荐使用。
- 使用操作系统支持的原生观看功能,因此不会浪费CPU等待。
- 不支持所有平台,例如 AIX 和 Cygwin。
fs.watchFile()
- 是旧 API,不推荐。
- 定期调用 stat(),因此即使没有任何变化也会使用 CPU。
- 可在任何平台上运行。
- 不在博客文章中:
node-watch()
我自己没有使用过node-watch,但是,通过查看它,我可以看到它扩展了fs.watch()并添加了递归功能。 fs.watch() 允许您监视目录的更改,但要监视下面的所有目录将需要单独的调用。如果我不得不猜测,(我没有尝试过)这些可能是相同的:
fs.watch(./project)
fs.watch(./project/assets)
fs.watch(./project/lib)
或者
node-watch(./project, { recursive: true })
关于node.js - fs watch方法的区别,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44738837/