天天看点

hsdb基本操作

打开hsdb程序

进入目录

C:\Program Files\Java\jdk1.8.0_251\lib
           

执行命令

java -cp .\sa-jdi.jar sun.jvm.hotspot.HSDB
           

报错

如果报错

Exception in thread “Thread-1” java.lang.UnsatisfiedLinkError: Can’t load library: C:\Program Files\Java\jre1.8.0_251\bin\sawindbg.dll

at java.lang.ClassLoader.loadLibrary(Unknown Source)

解决

把C:\Program Files\Java\jdk1.8.0_251\jre\bin\sawindbg.dll
复制到C:\Program Files\Java\jre1.8.0_251\bin目录下

           

连接程序

先得到java的进程id

hsdb基本操作

输入进程id

hsdb基本操作

连接成功

hsdb基本操作

console

windows菜单下的console
           
hsdb基本操作

universe

查看内存区间

hsdb基本操作

scanoops

扫描指定内存区间,类的类型

scanoops 0x000000076b180000 0x000000076fc00000 java.lang.String
           
hsdb基本操作
hsdb> scanoops 0x0000000700b00000 0x00000007019666c8 stringtable.StringDemo
0x0000000700c5c080 stringtable/StringDemo
0x0000000700c5c6b0 stringtable/StringDemo
           
hsdb基本操作

图形化看堆区域

hsdb基本操作

inspect

命令inspect

查看某个类的信息

hsdb基本操作

图形化inspector

hsdb基本操作
hsdb基本操作

Object Histogram

revptrs

revptrs 0x000000076b426f08