查看 GC 日志文件,不言而喻即可了解应用程序已停止 0.0011450 秒(停止世界)
Total time for which application threads were stopped: 0.0011450 seconds
但是,请帮我理解下面几行是否也意味着停止世界?或者它只是显示每个线程所花费的时间,real=TIME 是什么意思(下面最后一行)?
Finished work stealing in 3th thread: 13.706 sec
Finished work stealing in 2th thread: 17.325 sec
Finished work stealing in 4th thread: 17.052 sec
Finished work stealing in 0th thread: 17.325 sec
Finished work stealing in 1th thread: 17.324 sec
2015-08-19T03:20:32.882-0400: 321985.669: [CMS-concurrent-mark: 20.519/20.624 secs] (CMS-concurrent-mark yielded 6 times)
[Times: user=138.91 sys=0.10, real=20.62 secs]
最佳答案
This oracle blog post是谷歌搜索“CMS-concurrent-mark”时的第一个结果,并解释了各个 CMS 阶段。
通过 GCviewer 运行日志还将分别列出 STW 和非 STW 阶段。
由于您已经打开了应用程序停止时间日志记录,因此无论是否是 STW 暂停,缺少停止时间日志记录条目都应该是一个致命的弱点。
what does real=TIME means (last line below)?
此输出相当于您从 time 获得的输出例如。另请参阅this SO answer 。或this one具体引用 CMS 日志。
关于java - 了解 GC 日志 - 应用程序线程已停止,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32120571/