2012-02-18 13 views
5

Tengo un problema con los hilos daemon en Linux. Mi aplicación en el servidor de Windows funciona bien, cuando creo un volcado de hilo puedo ver si un hilo es un daemon o no.¿Por qué VisualVM no muestra hilos de daemon en Linux?

Pero cuando muevo mi aplicación a Tomcat en un servidor Linux y creo un volcado con Java Visual VM, ya no veo el daemon en los detalles de los hilos.

¿Significa que los hilos daemon solo funcionan en Windows? ¿Y hay alguna solución alternativa o debemos cerrar cada hilo al salir de la aplicación?

+0

Los hilos Daemon funcionan bien en Linux. No puedo ayudarte con visualvm, ¿quizás tienes dos versiones diferentes? – bmargulies

Respuesta

2

http://docs.oracle.com/javase/6/docs/technotes/guides/visualvm/threads.html - Esto parece sugerir que Visual VM trata bien con hilos normales y daemon. He usado el monitor en vivo en Visual Vm y eso funciona bien en Linux.

Pero cuando muevo mi aplicación a Tomcat en un servidor Linux y creo un volcado con Java Visual> VM, ya no veo el daemon en los detalles de los hilos.

¿Sería posible que solo muestre una salida de muestra?

¿Significa que los hilos daemon funcionan solo en Windows?

No! Los hilos Daemon funcionan bien en Linux.

¿Existe alguna solución o debemos cerrar cada subproceso al salir de la aplicación?

Cuando un proceso muere, el sistema operativo se encarga de recolectar todos los recursos asociados, incluidos los hilos. Entonces, no necesitas hacer nada. De hecho, solo como una nota al margen, JVM no le permite lidiar directamente con el ciclo de vida de los hilos.

+0

"hilo-1" - Tema t @ 101 java.lang.Thread.State: TIMED_WAITING \t en sun.misc.Unsafe.park (Nativo Método) \t - estacionamiento para esperar ... – user710818

+0

No hay prioridad y daemon, en Windows puedo ver: – user710818

+0

¿Puede ser que se haya iniciado tomcat en modo depuración o no? – user710818

1

Parece que está monitoreando su aplicación a través de la conexión JMX. En este caso, la información sobre el tipo de subproceso daemon/no demonio no está disponible.

Cuestiones relacionadas