FUD*_*FUD 5 collections parallel-processing scala
大约需要1秒钟
(1 to 1000000).map(_+3)
Run Code Online (Sandbox Code Playgroud)
虽然这给出了java.lang.OutOfMemoryError:Java堆空间
(1 to 1000000).par.map(_+3)
Run Code Online (Sandbox Code Playgroud)
编辑:
我有标准的scala 2.9.2配置.我在scala提示符下键入此内容.在bash中我可以看到[-n"$ JAVA_OPTS"] || JAVA_OPTS =" - Xmx256M -Xms32M"
我没有在我的环境中设置JAVA_OPTS.
100万个整数= 8MB,创建列表两次= 16MB
它似乎肯定与JVM内存选项和存储Parralel集合所需的内存有关.例如:
scala> (1 to 1000000).par.map(_+3)
Run Code Online (Sandbox Code Playgroud)
最后OutOfMemoryError我第三次尝试评估它,而
scala> (1 to 1000000).par.map(_+3).seq
Run Code Online (Sandbox Code Playgroud)
从未失败过.问题不在于计算它是Parrallel集合的存储.
| 归档时间: |
|
| 查看次数: |
708 次 |
| 最近记录: |