ParNew gc会阻止世界吗?

2022-09-01 18:25:47

我看到GC输出如下:

2010-12-10T16:00:44.942+0800: 1443.562: [GC 1443.562: [ParNew: 201856K->17318K(201856K), 0.0352970 secs] 2113334K->1949037K(4416748K) icms_dc=0 , 0.0354310 secs] [Times: user=0.12 sys=0.00, real=0.04 secs]
2010-12-10T16:00:46.207+0800: 1444.827: [GC 1444.827: [ParNew: 196774K->22400K(201856K), 0.0119290 secs] 2128493K->1954446K(4416748K) icms_dc=0 , 0.0120560 secs] [Times: user=0.13 sys=0.00, real=0.02 secs]
2010-12-10T16:00:47.562+0800: 1446.182: [GC 1446.182: [ParNew: 201856K->22400K(201856K), 0.0714350 secs] 2133902K->1982695K(4416748K) icms_dc=0 , 0.0715720 secs] [Times: user=0.23 sys=0.01, real=0.07 secs]
2010-12-10T16:00:48.545+0800: 1447.165: [GC 1447.165: [ParNew: 201856K->22400K(201856K), 0.1457230 secs] 2162151K->2008418K(4416748K) icms_dc=0 , 0.1458710 secs] [Times: user=0.71 sys=0.05, real=0.15 secs]

我想知道ParNew GC是否会停止所有线程。谢谢。


答案 1

Jon Masamitsu的博客说得很清楚

“ParNew”是一个停止世界,复制收集器,它使用多个GC线程。

在你展示的示例中,时间安排相当快,尽管


答案 2

是的,ParNew是一个“停止世界”系列,收集了年轻一代。由于年轻一代通常规模较小,因此收集应该非常快,并且不应该对您的应用程序产生太大影响。