Подтвердить что ты не робот

ParNew gc остановит мир?

Я вижу выход 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 останавливать все потоки. Спасибо.

4b9b3361

Ответ 1

Блог Джона Масамицу говорит так четко.

"ПарНью" - это стоп-мир, копирование сборщик, который использует несколько GC потоки.

В примере, который вы показали, тайминги достаточно быстры, хотя

Ответ 2

Да, ParNew - это коллекция "стоп-мир", которая собирает молодое поколение. Поскольку молодое поколение обычно имеет небольшие размеры, сбор должен быть очень быстрым и не должен сильно влиять на ваше приложение.

Ответ 3

Да, это остановить мир. В вашем примере вы увидите время паузы в квадратных скобках. Обычно это то же самое, что и в реальном времени. Пользователь? время - это фактическое время процессора, затрачиваемое на GCing. Он может быть намного больше, чем в реальном времени, когда используется параллельность. В вашем случае это выглядит как 4 потока GC.

Ответ 4

Да, он останавливается, мир, хотя в зависимости от размера и приложения кучи, выглядит так, как будто вы можете использовать больший размер newGen. Вы делаете небольшой GC каждую минуту. Больший размер newGen не обязательно означает, что у вас будет более продолжительное время GC. Хотя преимущество заключается в том, что вы не будете продвигать объекты, которые скоро умрут до старого поколения. Когда придет время для полного gc, у вас будет меньше объектов для удаления и меньше времени простоя.