【发布时间】:2011-07-01 00:01:16
【问题描述】:
我正在将 csh 脚本转换为 python 脚本。该脚本调用了一个需要非常大堆栈的内存密集型可执行文件,因此 csh 脚本将堆栈大小设置为无限制:
limit stacksize unlimited
当我尝试在 python 中重现此脚本时,我以非常幼稚的方式执行它们,使用 os.system,例如:
os.system('some_executable')
但我不知道如何告诉操作系统以无限堆栈大小运行这些可执行文件。有没有办法为 python 脚本中的调用指定堆栈大小?我应该使用一些低级系统调用吗?是否有一个模块(类似于shutil)来控制它?
【问题讨论】:
-
尝试在Stack Clash 修正后设置
rlimit_stack可能会导致失败或相关问题。另请参阅红帽 Issue 1463241