StackOverflowError有什么解决方案?
有两种策略可以解决 StackOverflowError。
1.修改代码
由于进行了非终止的递归调用(如上例所示),因此线程堆栈大小可能会增大到较大的大小。在这种情况下,您必须修复导致递归循环的源代码。引发“ StackOverflowError”时,它将打印递归执行的代码的堆栈跟踪。此代码是开始调试和解决问题的良好指针。在上面的示例中,它就是 a() 方法。
2.增加线程堆栈大小(-Xss)
可能有正当理由需要增加线程堆栈大小。也许线程必须执行大量方法或很多局部变量/已在执行线程的方法中创建?在这种情况下,可以使用JVM参数'-Xss。'增加线程的堆栈大小。启动应用程序时需要传递此参数。
1.流套接字(SOCK_STREAM)
流套接字用于提供面向连接、可靠的数据传输服务。该服务将保证数据能够实现无差错、无重复送,并按顺序接收。流套接字之所以能够实现可靠的数据服务,原因在于其使用了传输控制协议,即TCP(The Transmission Control Protocol)协议
上一篇:电脑中的定义和用法是什么?多维数组在数学和计算机中的意义是什么?
下一篇:最后一页