我在多次导出到dll中调用函数时遇到问题。调用它例如80 000次会导致堆栈溢出。有什么办法可以避免呢?函数调用后可以清除堆栈或堆吗?
//export GetNum
func GetNum(DeviceType uint32, DeviceInd uint32, CANInd uint32) int {
return 0
}
答案 0 :(得分:4)
例如,调用80 000次会导致堆栈溢出。有什么办法可以避免吗?
是,例如称它只有1万次。或者不要使用递归算法或将递归转换为正常循环(尾部调用优化)。
P.S。您的代码未显示任何相关详细信息。