2013-12-10 8 views
7

Soweit ich weiß, wir JVM mit den nächsten Optionen ausführen können:-XX: + UseConcMarkSweepGC (was standardmäßig junge Generation Sammler?)

-XX:+UseConcMarkSweepGC 
-XX:-UseParNewGC 

in diesem Fall müssen wir die Seriell (DefNew) Müllsammler für die junge Generation und die Concurrent Mark Sweep Müllsammler für die alte Generation.

Nun, können wir JVM nur mit -XX:+UseConcMarkSweepGC Option ausführen? Ich meine ohne Optionen, die einen Müllsammler für die junge Generation beschreiben. Wenn wir das können, welcher Müllsammler wird für die alte Generation verwendet?

Antwort

16

Nach this blog entry:

Beachten Sie, dass mit den jüngsten JVM-Versionen -XX:+UseParNewGC automatisch aktiviert wird, wenn -XX:+UseConcMarkSweepGC eingestellt ist. Als eine Konsequenz wenn parallele junge Generation GC nicht gewünscht wird, muss deaktiviert werden, indem -XX:-UseParNewGC gesetzt wird.

Für eine kurze Zusammenfassung der Befehlszeilenkombinationen könnte Sie auch interessieren this overview.