我正在尝试使用 AdaCores GPS(Gnat 编程工作室)编译应用程序后运行它。
我收到运行时错误
Exception name: STORAGE_ERROR
Message: EXCEPTION_STACK_OVERFLOW
尽管使用
在 Binder 选项中设置了堆栈大小,但我还是遇到了这些运行时错误-d65535(任务堆栈大小)和 -D65535(辅助堆栈大小) (我还尝试过 65535k 和 655m)。
使用 Aonix Object Ada 编译器编译该应用程序时运行良好。在 Aonix 编译器中我设置了 - 堆栈大小为 65535, - 辅助堆栈大小为 65535 - 任务堆栈大小为 46345。
我的主要目标是将应用程序移植到 GNAT Ada 编译器。
我注意到 -d 设置任务堆栈大小,-D 设置辅助堆栈大小,但我看不到在哪里设置主堆栈大小,我假设这是应用程序的问题,但请纠正我如果我看错了方向。
如有任何指点,我们将不胜感激。
熊睡了
最佳答案
如果问题确实是主要任务,解决方法是将主要过程移至辅助任务的主体。
关于stack-overflow - GNAT Ada 运行时异常 = 消息 EXCEPTION_STACK_OVERFLOW,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32183514/