Perfil 1.JHSDB
JHSDB es una agencia de servicios con sede fuera del proceso de implementación de herramientas de depuración. agente de servicio HotSpot es la máquina virtual utilizado para mapear un conjunto de máquina virtual Java información operativa, basada principalmente en un conjunto de lenguaje Java API.
inicio 2.JHSDB
2.1 Inicio Ejemplo de código
empaquetar com.ryj.hotspot; importación java.io.IOException; importación org.omg.CORBA.ObjectHolder; público de clase JHSDB_Test { estática clase de prueba { estática ObjectHolder staticObj = nueva ObjectHolder (); ObjectHolder instanceObj = nuevo ObjectHolder (); void foo () { ObjectHolder localobject = nuevo ObjectHolder (); mientras que ( verdadera ) { try { Thread.sleep ( 6000 * 1000l); } Catch (InterruptedException e) { // generada automáticamente TODO captura bloque e.printStackTrace (); } } } } Pública estáticas vacíos principales (args String []) { test = nueva JHSDB_Test.Test (); test.foo (); } }
2.2 encontrar el ID del proceso java
C: \ Archivos de programa \ Java \ jdk1.8.0_144 \ bin> JPS -l 8400
2.3 A partir JHSDB
C:. \ Archivos de programa \ Java \ jdk1.8.0_144 \ lib> java -cp \ sa-jdi.jar sun.jvm.hotspot.HSDB
Si aparece el mensaje de error, es necesario mover un archivo a la falta de la lib
número de proceso de entrada de 2.4 en la ventana que se abre
- Inspector: Ver información del objeto y Klass programación orientada a objetos, haga doble clic en el nombre de la rosca también puede ver esta información
- Pila de la memoria: la memoria de pila del subproceso
- Mostrar rastros de Java Pila: información de pila de subprocesos pantalla
- Mostrar Tema Infomation: la información de temas de visualización
- Encuentra Accidentes
combate 3.JHSDB
3.1 Visualización de la información del montón
A través de Herramientas - Ver o Windows> Montón Parámetros -> ejecución de comandos de consola
HSDB> universo Heap Parámetros: ParallelScavengeHeap [PSYoungGen [eden = [0x00000000d5d80000,0x00000000d5f73368,0x00000000d7e00000], desde = [0x00000000d8300000,0x00000000d8300000,0x00000000d8800000], a = [0x00000000d7e00000,0x00000000d7e00000,0x00000000d8300000]] PSOldGen [[0x0000000081800000,0x0000000081800000,0x0000000086d80000]] ]
3.2 vistazo objetos de direcciones de memoria
HSDB> scanoops 0x00000000d5d80000 0x00000000d8800000 com.ryj.hotspot.JHSDB_Test $ ObjectHolder
Debido a que el comando de entorno local scanoops dado, su ulterior consulta https://www.bilibili.com/video/av95220376/