让我们考虑其 github 页面中 README 中的第一个示例:
val converter: Task[Unit] =
io.linesR("testdata/fahrenheit.txt")
.filter(s => !s.trim.isEmpty && !s.startsWith("//"))
.map(line => fahrenheitToCelsius(line.toDouble).toString)
.intersperse("\n")
.pipe(text.utf8Encode)
.to(io.fileChunkW("testdata/celsius.txt"))
.run
它在内存使用方面的效率如何?在将结果传递给下一步之前,它会在每一步缓冲内存中的全部内容吗?或者它会以流式方式完成,这意味着它将有恒定的内存使用?
此外,scalaz-stream 是我们可以考虑在生产环境中使用的高质量库吗?