Java 如何在堆文件中找到局部变量
我有一个j2ee应用程序,并通过visualVM监控它 假设我有这样一种方法:Java 如何在堆文件中找到局部变量,java,visualvm,heap-dump,eclipse-memory-analyzer,Java,Visualvm,Heap Dump,Eclipse Memory Analyzer,我有一个j2ee应用程序,并通过visualVM监控它 假设我有这样一种方法: public void doStuff(int param) { String s = getStringVariable(param); StringBuilder sb = new StringBuilder(); //Do stuff with sb object } 从线程点击中,我可以看到我的一些线程卡在上述方法中。因此,我生成了一个堆转储文件,以确定s和sb包含什么 但是我怎么能
public void doStuff(int param) {
String s = getStringVariable(param);
StringBuilder sb = new StringBuilder();
//Do stuff with sb object
}
从线程点击中,我可以看到我的一些线程卡在上述方法中。因此,我生成了一个堆转储文件,以确定s和sb包含什么
但是我怎么能做到呢?我正在使用Eclipse内存分析器。您可以从线程中获取局部变量,因为如果局部变量当前是活动的,那么这意味着该变量的唯一引用是它自己的线程 因此,首先您需要列出您当前的线程,您可以通过以下方式完成:
- 右键单击->列表对象->传出引用
然后在标记中搜索局部变量,谢谢,现在我可以看到我所有的局部变量了。