NodeJS,可读流,一次推送大量数据

时间:2016-10-24 15:10:51

标签: node.js stream

我正在尝试实现可读的流。数据源是一种测量工具,在启动时会生成大量数据。 我试图在我的_read(大小)实现中一次推送大量数据。 当我开始测量并推迟流时,所以我已经拥有比内部缓冲区更多的数据,我得到了奇怪的行为。

  • 我尝试推送所需尺寸的数据 - >错误,需要减少一点(在我的情况下是32)
  • 即使第一次推送成功,接口再次调用_read(size),当我试图推送请求的大小时,我收到错误。内部缓冲区仍然已满。
  • 当我在数据变得比内部缓冲区大之前启动流时,一切正常。

这是我的代码:

java.util.Date

这里输出:

java.time.temporal.Temporal someTemporal = Instant.now();
java.util.Date some Temporal = x(someTemporal);

有人可以帮忙吗? 为什么流通过调用_read(大小)来请求数据,即使内部缓冲区已满?为什么内部缓冲区没有被清空?

谢谢!

1 个答案:

答案 0 :(得分:0)

似乎我错过了解this.push的返回值。我需要推送数据,直到它返回false。 当我弄错的时候,我试图再次推动这个块,因为我认为这是不成功的。