该场景调用fs.close是必要的

时间:2014-01-17 02:22:47

标签: node.js file-io

我在nodejs API中找不到关于fs.close解释的更多信息。 我想知道场景调用fs.close是必要的。 例如:

var fs =  require('fs');
fs.writeFile("/home/a.tex","abc"); or like fs.appendFile("/home/a.tex","close")
fs.close(); //is it necessary?

如果我不调用fs.close会有什么影响吗?

感谢任何帮助。

1 个答案:

答案 0 :(得分:76)

您不需要在fs.closefs.readFilefs.writeFile之后使用fs.appendFile,因为它们不会返回fd(文件描述符) 。那些打开文件,对其进行操作,然后为您关闭它。

fs.createReadStreamfs.createWriteStream返回的流在流结束后关闭但可能提前关闭。如果您已暂停流,则必须在流上调用close才能关闭fd或恢复流,并在发出所有数据后结束。

但是,如果您致电fs.open或其他任何提供fd的人,则您最终必须fs.close fd给您。{/ p>