应用程序会在java中的次要GC期间暂停吗?

时间:2015-05-06 14:53:06

标签: java garbage-collection

整个应用程序是否会在次要GC执行期间停止提供请求? 我可以为我的应用程序配置GC参数。能否帮助我理解GC日志格式。 enter image description here

2015-03-30T10:51:08.157-0400: 25.583: [GC [PSYoungGen: 1572864K->198625K(1835008K)] 1670953K->296714K(6029312K), 0.4902390 secs] [Times: user=1.56 sys=0.21, real=0.50 secs]
2015-03-30T10:51:50.081-0400: 67.507: [GC [PSYoungGen: 1834989K->262142K(1419264K)] 2105157K->613533K(5613568K), 0.1827340 secs] [Times: user=2.93 sys=0.15, real=0.19 secs]

1 个答案:

答案 0 :(得分:1)

  

整个应用程序是否会在次要GC执行期间停止提供请求?

是的,AFAIK的每个收藏家(除了一些商业的,昂贵的实施可能)都将阻止世界的GC收集。它不一定会在整个传球过程中阻止世界,但它将包含一个停止世界的部分。 (至少过去就是这种情况 - 很高兴被证明是错误的!)这在实践中很少出现问题,但是请求不会被拒绝,它会(在最坏的情况下) )等待GC时需要更长的时间。

除非您对GC施加了很大的负担或者调整得不好,否则这在实践中不太可能成为问题。

  

请帮助我理解GC日志格式。

它显示您正在使用并行清除收集器,并且发生了两个收集,耗时0.5和0.19秒。