Garbage collector par défaut pour Java 8


Quel est le garbage collector par défaut pour Java 8?

Lorsque je vérifie les Beans JMX, ils le révèlent comme étant le collecteur parallèle pour la nouvelle génération et l'ancien collecteur série pour l'ancienne génération.

Author: Tunaki, 2015-10-19

4 answers

Garbage collectors par défaut:

  • Java 7-GC parallèle
  • Java 8 - Parallèle GC
  • Java 9-G1 GC
  • Java 10-G1 GC
 134
Author: x4444, 2018-10-15 11:23:34

Sélectionner le garbage collector par défaut (entre autres) est ce qu'on appelle le processusergonomie de la JVM. Ce processus dépend de la classe de votre machine.

  • Pour une machine de classe serveur, définie comme une machine avec 2 processeurs physiques ou plus et 2 Go ou plus de mémoire physique (quelle que soit la plate-forme), le garbage collector par défaut est le parallel collector (également connu sous le nom de collecteur de débit).
  • Pour la machine de classe client, définie comme un plate-forme 32 bits sur Windows ou une machine à processeur unique, le garbage collector par défaut est le serial collector.

Puisque pratiquement toutes les machines ont 2 CPU ou plus, une machine est pratiquement toujours considérée comme une classe serveur par la JVM. C'est pourquoi vous trouverez beaucoup de références considérant le collecteur parallèle comme le garbage collector par défaut.

 81
Author: Tunaki, 2015-10-19 09:09:31

Java a quatre types de garbage collectors(jusqu'à la version 10),mais après la version stable de java 11 , ce serait 5 types. Ce sont: -

  1. Ramasse-miettes série - S GC
  2. Garbage Collector parallèle - P GC
  3. CMS Garbage Collector - CMS GC
  4. G1 Garbage Collector - G1 GC
  5. Le Garbage Collector Z - ZGC

Implémentations par défaut de GC en java -

JVM GC

 Java 7 - P GC       
 Java 8 - P GC
 Java 9 - G1 GC
 Java 10- G1 GC
 Java 11- Z GC(I am not sure but it would be default GC of java 11)

Plus de détails pour ZGC, veuillez visiter

Http://openjdk.java.net/projects/zgc/

Https://www.opsian.com/blog/javas-new-zgc-is-very-exciting/

Remarque: Si vous souhaitez vérifier quel GC est actuellement utilisé par la JVM, vous pouvez utiliser la commande suivante pour afficher le GC par défaut: -

$ java -XX:+PrintCommandLineFlags -version 

Si vous souhaitez définir GC en fonction de vos besoins, vous pouvez le faire en suivant la commande. Ici je vais définir G1 GC par défaut GC.

$ java -XX:+UseG1GC -XX:+PrintCommandLineFlags -version 

entrez la description de l'image ici

For more details , please visit 

Https://javapapers.com/java/types-of-java-garbage-collectors/

Https://alvinalexander.com/java/java-jvm-how-show-which-garbage-collector-running

 62
Author: Brajesh, 2018-09-22 11:24:15

Depuis Java 9 jusqu'à Java 15, le G1GC est la valeur par défaut même sur Java 15 qui ajoute deux Garbage collectors de nouvelle génération celui qu'Oracle développe ZGC et une implémentation red hat qui est Shenandoah les deux sont prêts à la production en Java 15 septembre de 2020.

 -1
Author: chiperortiz, 2020-10-08 10:23:06