graceful-fs 作为 fs 模块的替代品,进行了各种改进。
这些改进旨在规范跨不同平台和环境的行为,并使文件系统访问对错误更具弹性。
- 排队
open并readdir调用,如果有来自太多文件描述符的 EMFILE 错误,则在某事关闭后重试它们。 - 修复
lchmod了 0.6.2 之前的 Node 版本。 fs.lutimes如果可能的话实施。否则它会变成一个 noop。- 中的忽略
EINVAL和EPERM错误chown,fchown或者lchown如果用户不是 root。 - 如果不可用,则制作
lchmod并成为 noops。lchown read如果导致 EAGAIN 错误,则重试读取文件。
EACCESS 在 Windows 上,如果发生错误,它可能会重命名文件最多一秒钟EPERM,这可能是因为防病毒软件已锁定目录。
本文概述了graceful-fs库如何改进Node.js的文件系统API,如队列优化、错误处理增强、lchmod修复和读取重试等,使其在不同平台和环境下更稳定。特别关注了对EMFILE和EAGAIN错误的处理,以及Windows上的特殊处理措施。
2万+

被折叠的 条评论
为什么被折叠?



