因为由于过于递归而导致堆栈溢出问题,所以我尝试使用while循环来解决它。 但即使在溢出之前退出递归并重新进入递归仍会导致溢出,如何在退出后清除包含递归的堆栈的已分配内存?
答案 0 :(得分:0)
我不确定..但你可以尝试 - System.runFinalization();要么 System.runFinalizersOnExit();
答案 1 :(得分:0)
当你的应用程序关闭堆栈时应该清除你的递归仍然可能太深。使用递归时请仔细检查代码,确保递归方法结束。 如果您的递归方法确实结束,您可以增加堆栈大小,但我不建议这样做。相反,你应该问问你自己的方法。
但是如果你想增加堆栈大小,请检查以下链接: some other reason