Muchas instancias de javaw.exe

El Administrador de tareas muestra muchas instancias de javaw.exe que residen en la memoria, lo que hace que Windows se quede sin memoria. Estoy usando este código para cerrar mi aplicación java:

SwingUtilities.invokeLater(new Runnable() 
{
    public void run()
    {
       Form1 frame = new Form1();
       frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    }
});

¿Como puedo solucionar este problema?

preguntado el 28 de agosto de 11 a las 00:08

Problema resuelto: moví las siguientes líneas del constructor JFrame a la función principal: frame.setMinimumSize (new Dimension (900,800)); frame.setLocation (0, 10); frame.setVisible (verdadero); -

3 Respuestas

Prueba esto:

frame.addWindowListener(new WindowAdapter(){
     public void windowClosing(WindowEvent we){
        System.exit(0);
     }

Espero eso ayude.

Respondido 28 ago 11, 05:08

Entonces ni idea .. pero esto es muy extraño. Prueba sin SwingWorker ... ¿o es EDT? - JMelnik

Utilizan Processexplorer en lugar de TaskManager.
Seleccione uno de los procesos javaw.exe, vaya a la pestaña de la imagen y podrá ver la línea de comandos completa.
Esto le ayudará a determinar cuáles son realmente los procesos javaw.exe.

Respondido 28 ago 11, 10:08

En primer lugar, asegúrese de que% JAVA_HOME% / bin esté configurado en su RUTA y% JAVA_HOME% esté apuntando a su JDK.

Luego, para aprovechar estas herramientas JDK,

use jps -l para listar todos los procesos java.

utilizado jstack -l <pid> para comprobar el seguimiento de la pila y puede encontrar algunas pistas.

Respondido 28 ago 11, 10:08

No es la respuesta que estás buscando? Examinar otras preguntas etiquetadas or haz tu propia pregunta.