Javascript &引用;可读流在序列化之前已结束";在npm/jsonstreamstringify中
我有一个工人可以生成如下数据:Javascript &引用;可读流在序列化之前已结束";在npm/jsonstreamstringify中,javascript,stream,Javascript,Stream,我有一个工人可以生成如下数据: for(队列中的常量项){ 常量数据=等待获取数据(); 数据流推送(数据); } 可能有多个这样的工人同时运行,他们都推到同一条流。 此流可读,并馈送到JsonStreamStringify,如下所示: data\u stream=new stream.Readable({objectMode:true,read(){}) 新的JsonStreamStringify({foo:data_stream,…other stuff}).pipe(一些文件写入流);
for(队列中的常量项){
常量数据=等待获取数据();
数据流推送(数据);
}
可能有多个这样的工人同时运行,他们都推到同一条流。
此流
可读,并馈送到JsonStreamStringify
,如下所示:
data\u stream=new stream.Readable({objectMode:true,read(){})
新的JsonStreamStringify({foo:data_stream,…other stuff}).pipe(一些文件写入流);
当所有的工人都完成工作后,我们就以
data\u stream.push(空)
但我得到了这个错误:
(节点:17)未处理的PromisejectionWarning:错误:可读流在序列化之前已结束。所有流数据都已丢失
在JsonStreamStringify.addToStack(/usr/src/app/node_modules/json stream stringify/umd.js:316:32)
在JsonStreamStringify.processObject(/usr/src/app/node_modules/json stream stringify/umd.js:404:14)
在JsonStreamStringify.processStackTopItem(/usr/src/app/node_modules/json stream stringify/umd.js:506:53)
在JsonStreamStringify.读取(/usr/src/app/node\u modules/json stream stringify/umd.js:532:21)
马上。(/usr/src/app/node_modules/json stream stringify/umd.js:539:22)
在processImmediate(internal/timers.js:456:21)
它在谷歌上没有搜索结果,也没有给我一个有用的行号来追踪这个bug
你知道为什么会抛出这个错误吗?还是更好的解决方案,将数据从我的工作人员传递到JsonStreamStringify
对象
期望输出
我们写入的文件应该包含类似json的内容
{
foo: {
[data1, data2, ...]
}
}
当程序崩溃时,我们有类似json的:
{
foo: {
[