我正在使用scons并且正在尝试编译需要更大堆栈大小的程序,但我不知道如何扩展堆栈大小。这是在solaris机器上,我们使用scons来编译我们的项目。
任何人都知道怎么做?
答案 0 :(得分:0)
在执行程序之前的shell(ksh示例)中,您可以使用ulimit -s <size in kbytes>
。您可能需要提升权限才能更改它。
您也可以通过编程方式使用setrlimit
,但是从手册页中它不会调整当前正在运行的过程,因此它可能对您的需求没有帮助。
还要考虑一下你的程序需要更大的堆栈大小。有没有办法可以改变你的设计,使其更加友好? Solaris默认值似乎是10M,这是一个相当大的堆栈。