NodeJS - 如何等到 fs.WriteStream 关闭

问题描述 投票:0回答:0

我有一些代码需要用我的代码包装,原始代码是以这种方式创建

WriteStream
-

this.stream = this.fs.createWriteStream(this.logFilePath, {flags: 'a'});

然后,在函数的末尾使用 -

关闭流
this.stream.close()

我需要使用该功能,然后检查日志文件并验证它是否包含所有必需的数据,但不幸的是有时最后几行会丢失。 我相信这是因为当我打开文件进行阅读时流仍然没有关闭。

我知道我可以在流关闭时使用

stream.on('finish'...
来执行代码,但我不应该触及原始代码......并且在执行原始功能之前我无法访问
stream
对象(调用函数后,我可以从函数外部访问
stream
对象)。

有没有一种方法可以

wait
直到从原始功能外部关闭流?

node.js asynchronous node.js-fs
© www.soinside.com 2019 - 2024. All rights reserved.