Problemas con StackOverflowError

Franco
02 de Octubre del 2005
Hola chicos, espero me puedan ayudar o dar un poco d informacion...
En estos momentos estoy trabajando en 1 aplicacion web montada en tomcat, hago varias iteraciones y condiciones para llamar 1 metodo q dependiendo 1 parametro hace 1 recursion... Lo cierto es q esto muchas veces lanza 1 StackOverflowError, lo cual al parecer se produce por una profundidad muy inmensa en mis controles d desicion, se q el tomcat antes d invocar el metodo service d 1 jsp hace varias llamadas antes. Lo cierto es q quiero saber q tan profundo puedo enlazar condiciones e iteraciones y q no lance este error.
He visitado la pagina d java.sun.com pero no se por donde buscar... alguien sabe como puedo manejar esto?
Les agradecere su ayuda.
Gracias.

chuidiang
02 de Octubre del 2005
Hola:

El nivel de profundidad que puedes alcanzar en la recursión depende de la camtidad de recursos que consumas en ese método recursivo. Si el método declara un array de 100000 enteros, podrás llamarlo menos veces que si simplemente declara un int.

Revisa en primer lugar que no tienes un problema de recursión infinita, es decir, que empiezas a llamar una y otra vez sin fin.

Si no es así, puedes intentar ver los parámetros de arranque de tomcat o java. Suele haber forma (al menos la máquina virtual lo tiene) de darle más memoria a la máquina virtual para trabajar. Las opciones para java.exe suelen ser del tipo -Xms ( http://www.itapizaco.edu.mx/paginas/JavaTut/froufe/parteB/capb-3.html )

Otra opción más es tratar de optimizar el código para que consuma menos recursos, tratar de encontrar un algoritmo no recursivo, etc.

Se bueno