2012-04-27 29 views
14

Después de atender algunas solicitudes, mi eclipse ha comenzado a fallar en el método processWorkerExit().Eclipse se rompe en processWorkerExit

Según este link Sé cómo suprimir la ruptura del eclipse, pero ¿hay alguna razón por la cual el código se está rompiendo en esta línea? ¿Puede haber una pérdida de memoria en tal caso?

Tomcat 7.0.27
Eclipse 3.7.2
JDK 7.0.02

enter image description here

Respuesta

1

La razón por la que el depurador se detiene en esa línea es porque hay una excepción que es lanzado por el código dentro del bloque try{}, y esa línea particular de código es la siguiente línea ejecutable de código después de que se lanza la excepción. Es casi seguro que verá el rastro de la pila de esa excepción en la ventana de la consola, ya que de manera predeterminada se enviará una excepción no detectada que burbujea hasta Thread.run() al stderr.

En cuanto a su pregunta sobre si puede haber una pérdida de memoria (o más probable, esto es Java, una pérdida de recursos): la respuesta es sí, no podría ser. Pero no hay nada en ese código que indique que es. Si hubiera una fuga de ese tipo, sería casi seguro que se debe a un manejo de excepciones incorrecto dentro de la implementación task.

0

Tuve este mismo problema. Se rompe en su cláusula try/catch si tiene uno si no registra la excepción. Intente insertar un punto de interrupción o salida a LogCat así:

try 
{ 
    //HERE I'VE PUT ALL THE FUNCTIONS THAT WORK FOR ME 
    Log.e("tag", "Sth passed!"); 
} 
catch (Exception e) 
{ 
    //The task failed 
    Log.e("tag", e.getMessage());   
} 

Si usted no tiene bloque try/catch lo expresó así en el código anterior. En LogCat puede ver la última línea de código que se ejecutó antes de la excepción, le ayudará a localizar el error en su código así:

08-28 05: 49: 52.321: E/SQLiteDatabase (834): en java.lang.Thread.run (Thread.java:841)

9

respuesta está aquí: OpenJDK breaks on processWorkerExit with no breakpoint

en el modo de depuración en el eclipse de forma predeterminada, romper las excepciones no capturadas es comprobado. Como no tiene un método de captura aquí, es probable que se genere una excepción no detectada y el depurador se corte para inmediatamente antes de que se produzca la excepción. Puede desactivarlo en las preferencias en Java-> Depurar.

Cuestiones relacionadas