评估 2D 流时出现 OutOfMemoryError
为什么以下会导致 OutOfMemoryError
?
scala> Stream.tabulate(3, 4)(_ + _)
res0: scala.collection.immutable.Stream[scala.collection.immutable.Stream[Int]] = Stream(Stream(0, ?), ?)
scala> res0.length
同样的情况也发生在 size
和 force
方法的应用上。
Why does the following lead to OutOfMemoryError
?
scala> Stream.tabulate(3, 4)(_ + _)
res0: scala.collection.immutable.Stream[scala.collection.immutable.Stream[Int]] = Stream(Stream(0, ?), ?)
scala> res0.length
The same happens on application of size
and force
methods.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
2.8 中有一个 bug:“Stream.tabulate 创建无限流”
看看。
http://lampsvn.epfl.ch/trac/scala/ticket/3508
There is a bug in 2.8: "Stream.tabulate creates an infinite stream"
Have a look.
http://lampsvn.epfl.ch/trac/scala/ticket/3508