为什么在Scala的ParSeqLike中不推荐使用view方法?

时间:2017-05-28 20:32:37

标签: scala parallel-processing lazy-evaluation lazy-sequences

我试图将Lazy和Parallel Collections的优点结合起来: Vector( /* some values....*/ ).par.view - 它提供了巨大的性能提升。但Scala 2.12将该方法标记为ParSeqLike已弃用。使用Parallel Collection有什么问题?在哪里更换?

1 个答案:

答案 0 :(得分:0)

  

并行收集的延迟使用有什么问题?

如果你看一下定义,它就不是平行的:它被定义为def view = seq.view(因此Vector( /* some values....*/ ).par.view应该与Vector( /* some values....*/ ).view相同)。这就是文档告诉你的:直接使用seq.view所以很明显它不是平行的。可能ParSeqLike的某些后代可能会覆盖它,但ParVector没有。