Tru*_*tin 9 java class instance histogram
有没有办法以编程方式在当前的Java应用程序上打印最常用的N类?
样本输出:N = 10
num #instances #bytes class name
--------------------------------------
1: 23 4723136 [I
2: 19 4718928 [J
3: 18 4718880 [D
4: 73925 1774200 java.lang.String
5: 208 1226400 [C
6: 28 1205064 [B
7: 18 1179936 [F
8: 68 297040 [Ljava.lang.String;
9: 332 14136 [Ljava.lang.Object;
10: 32 10240 <objArrayKlassKlass>
Run Code Online (Sandbox Code Playgroud)
可能需要通过JVM 工具接口 (JVM TI)或篡改对象的实现(这是一件棘手的事情)。
本文可能有用:Creating a Debugging and Profiling Agent with JVMTI。