Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- object Test extends App {
- @annotation.tailrec def test(list: List[Int] = Nil, i: Int = 0): Unit = {
- println(i)
- test(i :: list, i+1)
- }
- test()
- }
- java -Xmx1G -Xms1G -classpath .:/usr/share/scala/lib/scala-library.jar Test
- 21269711 // not an OutOfMemoryError, but sooo sloooow
- Adding to Vector is incredably slow, use VectorBuilder, you should get the same capacity:
- import scala.collection.immutable.VectorBuilder
- object TestVectorBuilder extends App {
- val b = new VectorBuilder[Int]
- for { i <- 1 to Int.MaxValue} {
- println(i)
- b += i
- }
- }
- java -Xmx1G -Xms1G -classpath .:/usr/share/scala/lib/scala-library.jar TestVectorBuilder
- 47754251 // OutOfMemoryError
- This works fine without OutOfMemoryError:
- scala -J-Xmx1G -J-Xms1G -e '(1 to 45000000).toVector foreach println'
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement