读书人

VS停堆栈保留大大小是指什么

发布时间: 2012-06-20 20:37:21 作者: rapoo

VS下堆栈保留大大小是指什么?
我在vs2008下创建了WindowsMoble项目
在属性->连接器->系统下有一项“堆栈保留大大小”
默认是65536

然后我调用jrtplib库中的session,create后报错,我怀疑是多线程问题
然后我把65536修改为0,问题就解决了

想问一下各位,“堆栈保留大大小”是指什么?是创建线程是系统分配的默认堆栈大小吗?
我把它修改为0,会有什么影响?
谢谢了

[解决办法]
“堆栈保留大大小”是指程序堆和栈最大增长的大小,比如65536表示堆栈最大可增长到64K。
如果是0的话就没有大小限制。
[解决办法]
65536是64K,0是默认值1M,有可能在栈上申请的空间太多,导致栈溢出而无法运行,改为1M就够了
[解决办法]
想问一下各位,“堆栈保留大大小”是指什么?是创建线程是系统分配的默认堆栈大小吗?
我把它修改为0,会有什么影响?

为0就是默认值,堆栈保留大大小就是该代码函数的独占堆栈大小。

读书人网 >VC/MFC

热点推荐