当前位置: 首页 > 面试题库 >

解释jstat结果

卢黎明
2023-03-14
问题内容

我是jstat工具的新手。因此,我做了如下示例。

./jstat -gcutil -t 4001 5000
Timestamp         S0     S1     E      O      P     YGC     YGCT    FGC    FGCT     GCT
       565088.4   0.00   0.89  75.86  40.59  84.80    405    3.822     4    0.549    4.371
       565093.4   0.00   0.89  77.81  40.59  84.80    405    3.822     4    0.549    4.371
       565098.4   0.00   0.89  77.81  40.59  84.80    405    3.822     4    0.549    4.371
       565103.5   0.00   0.89  77.85  40.59  84.80    405    3.822     4    0.549    4.371
       565108.5   0.00   0.89  77.85  40.59  84.80    405    3.822     4    0.549    4.371
       565113.4   0.00   0.89  77.85  40.59  84.80    405    3.822     4    0.549    4.371


jstat -gc output

 S0C    S1C    S0U    S1U      EC       EU        OC         OU       PC     PU    YGC     YGCT    FGC    FGCT     GCT
704.0  704.0   0.4    0.0    6080.0   4013.8   14928.0     6335.2   21248.0 18019.6    436    3.957   4      0.549    4.506
704.0  704.0   0.4    0.0    6080.0   4016.6   14928.0     6335.2   21248.0 18019.6    436    3.957   4      0.549    4.506
704.0  704.0   0.4    0.0    6080.0   4135.4   14928.0     6335.2   21248.0 18019.6    436    3.957   4      0.549    4.506
704.0  704.0   0.4    0.0    6080.0   4135.4   14928.0     6335.2   21248.0 18019.6    436    3.957   4      0.549    4.506
704.0  704.0   0.4    0.0    6080.0   4135.4   14928.0     6335.2   21248.0 18019.6    436    3.957   4      0.549    4.506
704.0  704.0   0.4    0.0    6080.0   4135.4   14928.0     6335.2   21248.0 18019.6    436    3.957   4      0.549    4.506

结果表明什么?哪些列需要注意可能的内存问题,例如内存泄漏等。


问题答案:

请参阅文档:

https://docs.oracle.com/javase/8/docs/technotes/tools/unix/jstat.html

基本上,一行是一个时间点。这些列显示了有关JVM内存区域(Survivor,Eden等)的数据,如果不了解JVM的工作原理就无法理解它们。

这是JVM对象生成工作原理的摘录

Eden是创建新对象的地方。当伊甸园已满时,将small GC运行a:如果一个对象没有对其的引用,它将被删除,否则它将生存,并移至该Survivor空间(一次仅使用一个幸存者空间,所有对象来自其他空间复制到此处)。

如果对象在一定数量的来回复制中幸存下来,则将其移至Old空间。如果旧空间已满,Full GC则会运行a,这会影响JVM中的所有对象,因此操作会繁重得多。

另外,还有存储Permanent“元数据”(类描述符,字段,方法,…描述符)的空间。



 类似资料:
  • 我不熟悉jstat工具。因此,我做了如下样本。 这个结果表明了什么?哪些列需要注意可能的内存问题,例如内存泄漏等。

  • jStat 是一个 JavaScript 的统计库,用来执行高级的统计功能而无需一些专用的语言,例如 MATLAB 。

  • 我有以下来自weka项目的结果,我在理解它们的含义方面有一些问题。weka结果我知道正确分类实例的百分比通常称为准确性或样本准确性,但我不明白这意味着什么以及它向我展示了什么。我可以从中获得什么信息?正确分类的实例和不正确的实例是什么?同样在混淆矩阵上,我知道四个数字的总和是我给程序的数据的数量,但为什么在这样的网格中有四个数字。您可以提供的任何信息都会很有帮助,谢谢。

  • 我在swing中有一个Gui应用程序,可以在串行热敏打印机上打印票据。当我按下启动此操作的按钮时,我的GUI被冻结。我想那是因为代码是在EDT上执行的。我确实使用了jstack,但我不理解下面的结果: 有人能给我解释一下,我可以看到我的GUI冻结,因为第一个线程"Thread-12"。 第二,“线程6”和“线程7”有什么区别,只要我确定我只运行了一次这个线程。

  • 本文向大家介绍请解释下NaN === NaN的结果相关面试题,主要包含被问及请解释下NaN === NaN的结果时的应答技巧和注意事项,需要的朋友参考一下 N--a--N 就是照镜子都不认识自己的那位.so NaN !== NaN, NaN === Nobody 哈哈 这个解释很完美啊

  • 问题内容: 我有一个Gui应用程序,它可以在串行热敏打印机上打印票证。当我点击启动此操作的按钮时,我的GUI被冻结。我认为这是因为代码是在EDT上执行的。我用jstack来确定,但是我不明白下面的结果: 有人可以告诉我在哪里可以看到我的GUI由于第一个线程“ Thread-12”而被冻结。 其次,只要我确定我只运行过一次该线程,“ Thread-6”和“ Thread-7”之间有什么区别。 问题答