您的位置首页百科知识

关于Fortran发生堆栈溢出,增大stack size方法

关于Fortran发生堆栈溢出,增大stack size方法

的有关信息介绍如下:

关于Fortran发生堆栈溢出,增大stack size方法

在Fortran编程中,当程序中同时出现很多过大的矩阵时,程序经常会报错提醒发生堆栈溢出的问题,提示错误如下:

forrt1: server <170>: program Exception - stack overflow;

这是,如果确定程序是正确的,只是因为stack size 过小引起的,这是,我们可以通过增大程序的stack size的方式来解决问题,对于全英文版的Microsoft Visual Studio,网上给出修改stack size的步骤为:project->setting->link->outputstack allocationsreserve下面的空格设大一点比如,10000000为10M;但对于Microshoft Visual studio 2010 中文版,就很难找到修改的地方;这里针对Microshoft Visual studio 2010 中文版提供修改stack size的方法,具体步骤如下:

从工具栏,进入“项目”下拉菜单,点击最后一项“XXX属性 Alt+F7”选项,如下图;

进入"XXX属性页”,在配置为Release情况下,在配置属性中,点开"Linker"选项菜单,如下图所示;

在"Linker"菜单下,点击“System",进入"system"选项设置,修改"Stack Reserve Size "项目后面的数字,将原始默认值"0", 给为一个较大的数,如"10000000",这样既可完成对stack size大小的增大,能很好地解决stack overflow的问题。