如何增加 Scala 堆栈大小? [英] How to increase scala stack size?

查看:70
本文介绍了如何增加 Scala 堆栈大小?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我在执行 Scala 程序时遇到 java.lang.StackOverflowError.

I am getting a java.lang.StackOverflowError, when I execute a Scala program.

我相信堆栈大小可以用-DXss=n来设置,但它不起作用在我的系统上:

I believe that the stack size can be set with -DXss=n, but it does not work on my system:

  Scala compiler version 2.7.7final and
  Linux 2.6.38-8-generic #42-Ubuntu 

附加的程序见证了我系统上的问题.

The attached program witnesses the problem on my system.

// scalac StackOverflow.scala
// scala StackOverflow 6000
// scala -DXms=200M -DXmx=200M -DXss=200M StackOverflow 6000

object StackOverflow {
  def recur(k: Double): Double = {
    // check effects of various commands
    println(k)
    // try to prevent tail recursion
    if (k>0) return recur(k-1)+k/(k+1)
    else return 0.0
  }
  def main(args: Array[String]) {
    if (args.length == 0) println("Missing argument");
    val k = args(0).toInt+0.1
    recur(k)
  }
}

塞尔吉奥

推荐答案

我想你想要的是 scala -J-Xss200m

这篇关于如何增加 Scala 堆栈大小?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆