我正在使用 java visualvm 进行分析。我面临两个问题:
1) 如文档中所述
When a new local Java application is launched, a node for that application appears under the Local node. The application node disappears when the application terminates.
当我运行我的 java 应用程序时,我会遇到这种情况,它会运行几秒钟。 Visualvm 显示此 PID,但当我的程序停止时,此 PID 也会消失。
我该如何解决这个问题?
其次,我运行主函数,其中调用了其他类中存在的其他函数。我也想计算这些函数的时间。我怎样才能完成这个任务?
最佳答案
- 不是问题。当 Java 进程终止时,您将无法再连接到它。
- 您可以将相同的代码运行 1000 次并在 visualVM 中制作快照以分析内存使用情况、计算等。您必须将结果除以 1000。
这会给您带来更好的结果(花费 1000 次运行的时间并获得平均值),因为单次运行每次运行可能需要不同的时间。
关于Java VisualVm 使 PID 消失,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17251340/